Resume management and recruitment workflow system and method

ABSTRACT

A computer system and method for managing access to a resume database. For each skill or experience-related phrase in a resume, the system computes a term of experience based on an experience range associated with a contextual use of the phrase in the resume. The term of experience for a phrase that occurs multiple times in the resume is the summation of the term of experience for each occurrence of the phrase associated with a different contextual use. The system stores each phrase and the term of experience in a parsed resume. The resume database also stores job descriptions that include required phrases and a required term of experience for each required phrase. The job descriptions also store a required level of education or field of specialization, and a required salary range. A recruiter searches the resume database to find matching resumes that satisfy a job description.

FIELD OF THE INVENTION

The present invention relates, in general, to computing systems and dataprocessing. In particular, the present invention is a computer systemand method for managing access to a resume database, searching theresume database, generating a resume summary based on a stored resumeand job description, accessing a resume management and recruitmentworkflow system via a graphical user interface, and composing a resumefor a candidate.

BACKGROUND OF THE INVENTION

When an employer decides to hire a new employee, a hiring managerdetermines requirements for the new employee. The requirements includemandatory characteristics for the new employee. With the requirements inmind, the hiring manager begins to review resumes that the employerreceives from potential candidates.

A resume, or curriculum vitae, summarizes a candidate's career andqualifications. The resume is a mechanism to convey personal andbusiness-related characteristics that the candidate believes to berelevant to a prospective employer. The resume typically includes thecandidate's career objective, personal interests, professionalaffiliations, educational background, employment history, and adescription of work experience.

Reviewing candidate resumes is typically a manual process that involvesthe hiring manager reading or scanning each paper or electronic resumein a stack of resumes with the requirements for the new employee inmind. After reading or scanning a resume, the hiring manager decideswhether the candidate's qualifications described in the resume canpossibly satisfy the job requirements. For each resume that seems tosatisfy the requirements, the hiring manager contacts the potentialcandidate and attempts to schedule an interview. Once the potentialcandidate accepts the invitation to interview, the potential candidatebecomes a candidate for the new position. One disadvantage of thisprocess is the time required by the hiring manager to review resumesthat do not possibly qualify for the position. The hiring manager isreviewing a large number of resumes for the purpose of narrowing themdown to a few resumes that describe candidates who might qualify for theposition and warrant an interview or hire. Furthermore, the accuracy ofthe process depends on the accuracy of the hiring manager who is readingor scanning the large number of resumes. Thus, the manual process doesnot lend itself to reviewing a large enough number of resumes and islikely to miss the resume of a qualified potential candidate or find theresume of an unqualified potential candidate.

Prior electronic systems improved upon the manual process by creating adatabase of resumes and tools to search the database. The impetus fordeveloping these systems was to reduce the time required to reviewresumes, eliminate the tediousness of the task, and improve the accuracyof the search. These prior systems typically scanned a database ofdocuments using a textual word search of the resume content. The textualword search did not account for alternative terminology, spelling,format, or case differences between the search terms and the resumecontent. The textual word search also did not take into account thelength of the duration of an experience. Since these prior systems relyupon key words to describe the resume content, the disadvantages ofthese prior systems are similar to those of the manual process. Theseprior systems retrieve a much larger number of resumes than the numberof possibly qualified resumes. Thus, these systems retrieve a largenumber of irrelevant resumes. To narrow the output to a short list,these systems require a further manual review tallying the maximumpossible duration of experience for each required skill orexperience-related phrase. This manual review is still timely and proneto error. Borrowing a term from the science and art of data mining, theprecision ratio of prior systems has been extremely low. For certaintechnical jobs and jobs that require more than minimal experience, theprecision ratio can be under 5% and at times even below 1%.

Other prior electronic systems attempted to solve the reduction of thelarge number of resumes to a short list of possibly qualified candidatesby ignoring the resume and relying upon the candidate to input theduration of experience that they have in a skill or experience-relatedphrase. A search performed by these systems include the duration ofexperience on only a predetermined set of skill or experience-relatedphrases and rely on the candidate or the candidate's representative tocorrectly enter the duration of experience for the skill orexperience-related phrase. These systems may consider alternateterminology, spelling, or formatting differences, but only for thepredetermined set of skill or experience-related phrases. There arethree principal disadvantages to these systems.

First, prior electronic systems provide a very time consuming set-up forcandidates or their representatives. The candidate must enter eachacquired skill or experience-related phrase and the associated durationof experience. This becomes a particularly daunting task whenconsidering the number of recruitment systems to which an applicantmight want to post a resume or list of qualifications. It is also adaunting task for the recruitment systems managers because their staffmust read each resume or interview each candidate to obtain as manyskill or experience-related phrases as possible from their previousexperiences.

Second, prior electronic systems are not dynamic. They cannot consider askill or experience-related phrase and its possible duration ofexperience as soon as the resume arrives into the system. In thesesystems, a new skill or experience-related phrase will never besearchable for a given duration of experience unless the users of thesystem grant the skill or experience-related phrase the status of beingsearchable by duration of experience, irrespective of the existence ofthe resume in the system.

Third, prior electronic systems tally the duration of experience for askill or experience-related phrase at search time by utilizingtraditional search techniques. Performing the tallying of years ofexperience at search time optimizes storage and data normalization andprovides a simple traditional construct to the SELECT statement of arelational database. Unfortunately, tallying the duration at search timeis a processor intensive operation that negatively impacts the systemperformance.

Thus, there is a need for a resume management and recruitment workflowsystem that includes search and recruitment workflow tools to reduce aresume database to a manageable number of resumes by identifying a setof candidates who can possibly satisfy the qualifications andrequirements sought by a hiring manager. The search should identify anyresume that includes the sought after qualification or requirement andshould also interpret synonymous or alternative terms to be equivalentto the sought after qualification or requirement. Furthermore, thesearch should identify most resumes that can possibly include the soughtafter qualification or requirement and should avoid identifying resumesthat cannot possibly include the sought after qualification orrequirement. The qualifications and requirements should include anyskill or experience-related phrase that appears in a resume, but shouldalso accommodate requiring a candidate to possess the qualification orrequirement for a specified minimum period of time. The presentinvention addresses this need.

SUMMARY OF THE INVENTION

A computer system, method, and computer program product for managingaccess to a resume database. The method comprises receiving a resumethat includes at least one skill or experience-related phrase, storingthe resume in the resume database, computing a term of experience foreach skill or experience-related phrase, and storing a parsed resume inthe resume database. The parsed resume includes each skill orexperience-related phrase, the term of experience, and a relationshipbetween the term of experience and each skill or experience-relatedphrase. The resume further includes a contextual use for each skill orexperience-related phrase, the contextual use having an experiencerange. The term of experience for each skill or experience-relatedphrase being derived from the experience range of the associatedcontextual use. When the experience range is zero, the term ofexperience is set to zero. When the experience range is greater thanzero, the term of experience is the time difference between the starttime and the end time of the experience range rounded down to a unit oftime, such as a number of seconds, minutes, hours, days, weeks, months,years, or decades. For each skill or experience-related phrase that is arepeated entry, the computation of the term of experience is the sum ofthe time difference for each repeated entry that is in a differentexperience range.

The storing of the parsed resume further comprises storing each skill orexperience-related phrase having an identical term of experience as anelement defined by a markup language (e.g., XML), the element comprisinga start tag, content data, and an end tag. The start tag and the end taginclude the identical term of experience, and the content data includeseach skill or experience-related phrase having the identical term ofexperience. In another embodiment, the content data further includes anested element comprising a nested start tag, nested content data, and anested end tag. The nested start tag and the nested end tag include anested term of experience, and the nested content data includes eachskill or experience-related phrase having the nested term of experience.In another embodiment, the nested term of experience is greater than theidentical term of experience.

In another embodiment, the method further comprises receiving a jobdescription, storing the job description in the resume database, sendinga database query to the resume database, receiving a result set inresponse to the database query, and sending a portion of the result set.The job description including at least one job requirement, where eachjob requirement includes a required skill or experience-related phraseand a required term of experience. The result set includes at least onematching resume from the resume database with each matching resumesatisfying the job description. The required term of experience isrounded up to a unit of time, such as a number of seconds, minutes,hours, days, weeks, months, years, or decades. In another embodiment,the job description further includes a required level of education or arequired field of specialization. In another embodiment, the jobdescription includes a required salary range comprising a minimumrequired salary and a maximum required salary.

In another embodiment, the method comprises associating at least one ofthe skill or experience-related phrases with at least one implied skillor experience-related phrase, storing searchable phrases in the parsedresume, and computing a term of experience for each of the searchablephrases. The searchable phrases include the skill or experience-relatedphrases and each implied skill or experience-related phrase. Toassociate skill or experience-related phrases with implied skill orexperience-related phrases, the method retrieves each implied skill orexperience-related phrase from a mapping table that relates skill orexperience-related phrases to implied skill or experience-relatedphrases. The term of experience for each searchable phrase is derivedfrom the experience range of the contextual use associated with thesearchable phrase.

In another embodiment, the method comprises receiving a request tosearch the resume database, receiving search criteria, sending adatabase query to the resume database, receiving a result set inresponse to a database query, and sending the result set in response tothe request. In another embodiment, the method comprises sending arequest to search the resume database, sending search criteria, andreceiving a result set in response to a database query to the resumedatabase. The result set including at least one matching resume from theresume database, where each matching resume satisfies the searchcriteria.

In another embodiment, the method comprises receiving a request togenerate a summary of a resume, selecting a job description, sending adatabase query to the resume database, receiving a result set inresponse to the database query, and storing the resume summary. Theresult set including the resume and the resume summary, where the resumesummary includes the required skill or experience-related phrases.

In another embodiment, a graphical user interface comprises a first dataentry region, a second data entry region, and a search button. The firstdata entry region includes at least one required skill set, where eachrequired skill set comprises a required skill or experience-relatedphrase and a required term of experience. The second data entry regionincludes a search string comprising at least one search phrase, whereeach search phrase includes one of the required skill sets and aone-to-one mapping exists between the search phrases and the requiredskill sets. The search button being operative to send to a resumedatabase, a database query that includes the search string.

In another embodiment, the system updates the search string in thesecond data entry region to reflect changes made by a user editing therequired skill sets in the first data entry region. Similarly, theprocessor also updates the required skill sets in the first data entryregion to reflect changes made by a user editing the search string inthe second data entry region.

In another embodiment, the method comprises sending scripted questionsto a candidate, receiving responses to the scripted questions, andcomposing grammatically correct sentences based on the responses. Theresponses describe a job history for each job held by the candidate.

The preceding summary of the invention is presented to assist withunderstanding the invention and is neither an exhaustive nor anexclusive summary. It should be understood that this summary of theinvention is not representative of all of the inventions defined by theclaims, to be considered limitations on the invention as defined by theclaims, or limitations on equivalents to the claims. Thus, this summaryof the invention should not be considered dispositive when determiningequivalence. Additional features and advantages of the invention willbecome apparent from a review of the detailed description, figures, andclaims.

FEATURES AND ADVANTAGES

The resume management and recruitment workflow system allows a candidateto store requisite experiences, capabilities, and competencies by merelyposting their electronic or digital resume to the system. The candidatedoes not need to complete forms and assign years of experience to apredefined set of skill or experience-related phrases. The systemretains all of the experiences, skills, and experience-related phrasesfor the candidate and assigns the maximum possible duration ofexperience for each utilizing this information for the employer toexecute a search with great accuracy, i.e., an improved precision ratio.

The resume management and recruitment workflow system allows a hiringmanager or recruiting representative to search a resume database for acandidate having a specific skill or experience-related phrase at arequired minimum duration of experience. This search allows the hiringmanager or recruiting representative to reduce a large pool of resumesto a short list of resumes and to obtain a short list of candidates. Thecandidates in this short list will have the required skill orexperience-related phrases at possibly the required duration ofexperience as long as the resume contains job narratives that containthe skill or experience-related phrase, and the duration of the variousjobs held by the candidate. The search user interface allows the hiringmanager or recruiting representative to draft a database query usingeither an intuitive interface or a Boolean phrase interface. The systemconverts the one form of data entry to the other and vice-versa.

From each posted resume, the system extracts each skill orexperience-related phrase and stores it in an XML file within a durationtag. The duration tag has a value that is smaller than the maximumpossible duration of experience of the skill or the experience-relatedphrase but is the largest value among the values of elements of apre-established series of duration tags. Future searches for a candidaterelies on the experience-related phrases and associated duration tagstored in a resume database for retrieval by the hiring manager ofpossibly suitable candidates. The system does not require real-timetallying of duration of experience for skill or experience-relatedphrases at search time.

The system stores in the XML file the creation date of the resume in anumber of different time units. The user will be able to retrieveresumes for a period of time whose length is any one of these time unitsand whose creation date is so many such time units from a pre-determineddate. In the Gregorian calendar system, Dec. 12, 2003 is 2003 years from1 A.D., 24,036 months from January, 1 A.D. and approximately 731,596days from 12:00 A.M. Jan. 1, 1 A.D. For storing the creation or arrivaldate of a resume, this system created a different calendar system whoseunits are not necessarily days, months and years. This system enablesthe recruiter to retrieve all resumes that have arrived within any ofsuch units of time on any past date. For instance, if a three-days unitis one such unit of time, then this system can retrieve three days worthof resumes that meet a certain criteria on a specified date that is somany multiples of three days from the pre-determined date. So, althoughthis system will be retrieving data that is created between two datesthat are three days apart, the stored date in the XML file will be aunique number identifying each of the three days. Similar to theGregorian calendar, which utilizes days, months and years as units oftime, this system utilizes a number of time units, which arepre-determined by the implementers of the system. Optimizing the dataretrieval to the user's liking influences the determination of thelength and number of these time units. Smaller number of time unitstends to cause the units to carry high values and will cause the systemto retrieve a larger number of resumes. However, if you need to narrowthe number of resume retrieved, then a large number of such units isestablished, where the units' values will be narrowly spread out.

The system stores the salary in multiples of a predetermined series ofvalues. For instance, an 82,000 U.S. dollar salary is four 20,000 U.S.dollar units, sixteen 5,000 U.S. dollar units and eighty-two 1,000 U.S.dollar units. This system retrieves all resumes whose desired salariesfall in a range whose length is one such dollar unit. All resumes inthis dollar range, whose length is the value of the dollar unit, carrythe same attribute or multiple of that unit. Retrieving all resumes witha certain value of the multiple will retrieve resumes whose desiredsalary is with a range whose length is one such dollar unit amount. Thissystem can retrieve resumes within a dollar range without having toexecute data base retrieval statements that utilize the greater, smalleror between operators.

The system stores educational information, which includes degree, fieldof specialization, school name, and year of graduation. This systemallows the user to filter or retrieve resumes based on criteria relatedto education. Degrees are nested in a hierarchy. For instance, a resumeof a candidate who holds a master degree will appear in nestedenclosures for an associate, bachelor, and master degrees. Theimplementation can be made to accommodate any number of degrees that runin a hierarchy. Two degrees belong to the hierarchy when one implies theother. For instance, the holder of a Master's degree either holds aBachelor's degree or has the qualifications of at least the holder of aBachelor's degree.

The system maps each skill or experience-related phrase to a number ofbroad terms or phrases when a candidate posts the resume to the system.The system stores the broad terms or phrases and their maximum possibleduration of experience in the same fashion as it does for the narrowterms or phrases, from which the broad terms or phrases were derived.Thus, the search will have a direct hit for requested skill orexperience-related phrases as well as direct hits for their broad termsor experience-related phrases. Note that a broad term or phrase is aterm or a phrase that is implied by another term or phrase. The latterterm or phrase is the narrow term of the broad term that it implied. Theterm ‘imply’ is the Aristotelian implication in Logic as in thestatement: “If A then B”. In this statement A implies B. Therefore, B isa broad term of A and A is a narrow term of B.

After locating each skill or experience-related phrase, the systemdisplays the data extrapolated from the resume to the candidate andallows the candidate to correct, add, or delete any information from theresume. In another embodiment, the system assists the candidate withdeveloping a resume by asking the candidate a series of questionsdesigned in such a way that the answers will make up the phrases andsentences that comprise the content of a job assignment description. Inanother embodiment, when a hiring manager's search identifies a suitablecandidate, the system will generate for each employer's job, a summaryof the candidate's background that highlights the experiences mostpertinent to the job requirements.

The preceding features and advantages are presented to assist withunderstanding the invention and are neither an exhaustive nor anexclusive summary. It should be understood that these features andadvantages are not representative of all of the inventions defined bythe claims, to be considered limitations on the invention as defined bythe claims, or limitations on equivalents to the claims. Thus, thesefeatures and advantages should not be considered dispositive whendetermining equivalence. Additional features and advantages of theinvention will become apparent from a review of the detaileddescription, figures, and claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying figures best illustrate the details of the resumemanagement and recruitment workflow system and method, both as to itsstructure and operation. Like reference numbers and designations inthese figures refer to like elements.

FIG. 1 is a block diagram that illustrates the integration of resumemanagement and recruitment workflow system 140 into an operatingenvironment for a traditional job-opening fulfillment oremployment-seeking situation, in accordance with one embodiment of thepresent invention.

FIG. 2 is a network diagram that illustrates exemplary input and outputhardware components that may form the operating platform for resumemanagement and recruitment workflow system 140 shown in FIG. 1, inaccordance with one embodiment of the present invention.

FIG. 3 is a block diagram that illustrates the hardware and softwarecomponents comprising resume management and recruitment workflow system140 shown in FIG. 2, in accordance with one embodiment of the presentinvention.

FIG. 4 illustrates the conversion of an exemplary paper resume into anexemplary XML resume, in accordance with one embodiment of the presentinvention.

FIG. 5 is an exemplary database structure for resume database 302 shownin FIG. 3, in accordance with one embodiment of the present invention.

FIG. 6 is a flow diagram of an embodiment of resume management andrecruitment workflow system 140 receiving a job requirement fromrecruiter 120 a or adding a resume from candidate 110 a.

FIG. 7 is a flow diagram of an embodiment of resume management andrecruitment workflow system 140 displaying a list of jobs, searchingthrough previously entered and stored job descriptions and theirspecifications, and adding a new job and its description andspecification.

FIG. 8 is a flow diagram of an embodiment of resume management andrecruitment workflow system 140 parsing resume 115 a, storing its parseddata in resume database 302 and matching resume 115 a and its candidate110 a to a stored job, if applicable.

FIG. 9 is a flow diagram of an embodiment of resume management andrecruitment workflow system 140 searching resume database 302 for a listof resumes and, therefore, candidates that meet a set of requirementsinput by recruiter 120 a.

FIG. 10 is a data flow diagram of an embodiment of resume management andrecruitment workflow system 140 illustrating an exemplary job search.

FIG. 11 is a data flow diagram of an embodiment of resume management andrecruitment workflow system 140 illustrating the transmission of aresume from candidate 110 a to resume database 302.

FIGS. 12A through 12L are exemplary screen images from an implementationof resume management and recruitment workflow system 140.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 is a block diagram that illustrates the integration of resumemanagement and recruitment workflow system 140 into an operatingenvironment for a traditional job-opening fulfillment oremployment-seeking situation. In one embodiment, candidate 110 a authorsresume 115 a in an electronic format and stores resume 115 a in resumemanagement and recruitment workflow system 140 as a public resume. Thephrase “public resume” indicates that the system stores the resume andallows any buyer (e.g., recruiter 120 a) to access the resume withoutrestriction. The electronic format includes any standard digitaldocument format comprising text file formats such as American StandardCode for Information Interchange (ASCII) or Extended Binary Coded DataInterchange Code (EBCDIC), word processor file formats such as MicrosoftWord or WordPerfect, and markup language file formats such as StandardGeneralized Markup Language (SGML), HyperText Markup Language (HTML), oreXtensible Markup Language (XML). Recruiter 120 a determines a set ofrequirements and searches resume management and recruitment workflowsystem 140 for any resume that matches the set of requirements. Eachrequirement includes at least one required skill or experience-relatedphrase and a required minimum duration of experience associated with theskill or experience-related phrase. The phrase “matches the set ofrequirements” indicates that the resume includes each experience-relatedphrase in the set of requirements and that the maximum possible durationof experience for each experience-related phrase exceeds the requiredminimum duration of experience defined by hiring manager 130 a. Inanother embodiment, the phrase “matches the set of requirements”indicates that the resume includes additional criteria (e.g., education,salary range, or geographic location) as defined by hiring manager 130a. If resume 115 a matches the set of requirements, recruiter 120 aretrieves a copy of resume 115 a, optionally reviews the resume orinterviews the candidate as an additional screening step, and sends itto hiring manager 130 a for review. Even though this embodiment onlyillustrates the interaction of candidate 110 a, recruiter 120 a, andhiring manager 130 a, it is to be understood that resume management andrecruitment workflow system 140 can accommodate any number ofcandidates, recruiters, and hiring managers.

FIG. 1 also illustrates another embodiment that integrates recruitmentteam 125 into resume management and recruitment workflow system 140.Recruitment team 125, as shown in FIG. 1, includes recruiter 120 b andrecruiter 120 c however, it is to be understood that recruitment team125 may include any number of recruiters. Candidate 110 b, candidate 110c, and candidate 110 d each agreed to work with recruitment team 125.Candidate 110 b, candidate 110 c, and candidate 110 d author,respectively, resume 115 b, resume 115 c, and resume 115 d in anelectronic format and store resume 115 b, resume 115 c, and resume 115 din resume management and recruitment workflow system 140 as privateresumes. The phrase “private resume” indicating that the system storesthe resume and restricts access to the resume to the members of aspecific group of system users. As shown in FIG. 1, the specific groupis recruitment team 125. As shown in FIG. 1, candidate 110 b previouslyauthored another instance of resume 115 b and stored the other instanceof resume 115 b in resume management and recruitment workflow system 140as a public resume. Thus, resume 115 b is a “semi-private resume”because the other instance of resume 115 b discloses to the public theinformation common to both the public and private instance of resume 115b. In another embodiment, the private resume is a replacement for thepublic resume. The recruiters comprising recruitment team 125 haveaccess to both public and private resumes and search resume managementand recruitment workflow system 140 for any resume that matches the setof requirements defined by hiring manager 130 a and another set ofrequirements defined by hiring manager 130 b. If resume 115 c matchesthe set of requirements defined by hiring manager 130 b, a member ofrecruitment team 125 retrieves a copy of resume 115 c, optionallyreviews the resume or interviews the candidate as an additionalscreening step, and sends it to hiring manager 130 b for review. Eventhough this embodiment only illustrates the interaction of candidate 110b, candidate 110 c, candidate 110 d, recruitment team 125, hiringmanager 130 a, and hiring manager 130 b, it is to be understood thatresume management and recruitment workflow system 140 can accommodateany number of candidates, recruiters, and hiring managers.

FIG. 2 is a network diagram that illustrates exemplary input and outputhardware components that may form the operating platform for resumemanagement and recruitment workflow system 140 shown in FIG. 1. Network200, as shown in FIG. 2, is a public communication network that connectsand enables data transfer between the input hardware components, outputhardware components, and resume management and recruitment workflowsystem 140.

Network 200 shown in FIG. 2 is a public communication network however,resume management and recruitment workflow system 140 contemplates theuse of comparable network architectures. Comparable networkarchitectures include the Public Switched Telephone Network (PSTN), apublic packet-switched network carrying data and voice packets, awireless network, and a private network. A wireless network includes acellular network (e.g., a Time Division Multiple Access (TDMA) or CodeDivision Multiple Access (CDMA) network), a satellite network, and awireless Local Area Network (LAN) (e.g., a wireless fidelity (Wi-Fi)network). A private network includes a LAN, a Personal Area Network(PAN) such as a Bluetooth network, a wireless LAN, a Virtual PrivateNetwork (VPN), an intranet, or an extranet. An intranet is a privatecommunication network that provides an organization, such as acorporation, with a secure means for trusted members of the organizationto access the resources on the organization's network. In contrast, anextranet is a private communication network that provides anorganization, such as a corporation, with a secure means for theorganization to authorize non-members of the organization to accesscertain resources on the organization's network. The system alsocontemplates network architectures and protocols such as Ethernet, TokenRing, Systems Network Architecture, Internet Protocol, TransmissionControl Protocol, User Datagram Protocol, Asynchronous Transfer Mode,and proprietary network protocols comparable to the Internet Protocol.

The input hardware components shown in FIG. 2 include client computer210, personal digital assistant (PDA) 212, mobile device 214, servercomputer 216, and comparable devices. Client computer 210 is ageneral-purpose personal computer, workstation, or laptop configured toconnect to network 200. PDA 212 is a portable handheld device, such as aPalm handheld or Microsoft Pocket PC, configured to connect to network200 either directly or via client computer 210. When PDA 212 disconnectsfrom client computer 210, PDA 212 operates upon downloaded data storedlocally until reestablishing the connection to client computer 210 andsynchronizing the data. Mobile device 214 is a portable wireless devicethat connects to resume management and recruitment workflow system 140via network 200. In another embodiment, mobile device 214 is aland-based or wireless telephone that connects to resume management andrecruitment workflow system 140 via network 200. Server computer 216 isa general-purpose network computer that manages network resources andaccepts connections from computers such as client computer 210 vianetwork 200. It is to be understood that the input hardware componentsshown in FIG. 2 are illustrative examples that demonstrate the functionsperformed by a component and are not intended to limit resume managementand recruitment workflow system 140.

In one embodiment, candidate 110 a operates the input hardwarecomponents shown in FIG. 2 to create and store resume 115 a in anelectronic format. After storing resume 115 a, candidate 110 a operatesthe input hardware component to access resume management and recruitmentworkflow system 140 via network 200 and sends resume 115 a to resumemanagement and recruitment workflow system 140. In another embodiment,candidate 110 a operates the input hardware component to access resumemanagement and recruitment workflow system 140 and relies uponprogrammed instructions residing in resume management and recruitmentworkflow system 140 to create resume 115 a and store the resume onresume management and recruitment workflow system 140. In anotherembodiment, candidate 110 a operates the input hardware component toaccess resume management and recruitment workflow system 140 via network200 and verify or update the content of resume 115 a that was previouslytransmitted to resume management and recruitment workflow system 140. Inanother embodiment, candidate 110 a operates the input hardwarecomponent to access resume management and recruitment workflow system140 and verify or update the data parsed from candidate resume 115 a. Inanother embodiment, candidate 110 a operates the input hardwarecomponent to access resume management and recruitment workflow system140 and search a database of job descriptions stored by recruiters suchas recruiter 120 a. In another embodiment, candidate 110 a operates theinput hardware component to access resume management and recruitmentworkflow system 140 and submit resume 115 a for a job description storedby a recruiter such as recruiter 120 a. In one embodiment, the inputhardware component performs a resume “bulk load” by accessing resumemanagement and recruitment workflow system 140 via network 200 totransmit at least one resume using a transmission protocol such as thefile transfer protocol (FTP). In another embodiment, the resume bulkload is an automatic, scheduled process that occurs periodically.

The output hardware components shown in FIG. 2 include client computer220, PDA 222, mobile device 224, server computer 226, and comparabledevices. Client computer 220 is a general-purpose personal computer,workstation, or laptop configured to connect to network 200. PDA 222 isa portable handheld device, such as a Palm handheld or Microsoft PocketPC, configured to connect to network 200 either directly or via clientcomputer 220. When PDA 222 disconnects from client computer 220, PDA 222operates upon downloaded data stored locally until reestablishing theconnection to client computer 220 and synchronizing the data. Mobiledevice 224 is a portable wireless device that connects to resumemanagement and recruitment workflow system 140 via network 200. Inanother embodiment, mobile device 224 is a land-based or wirelesstelephone that connects to resume management and recruitment workflowsystem 140 via network 200. Server computer 226 is a general-purposenetwork computer that manages network resources and accepts connectionsfrom computers such as client computer 220 via network 200. It is to beunderstood that the output hardware components shown in FIG. 2 areillustrative examples that demonstrate the functions performed by acomponent and are not intended to limit resume management andrecruitment workflow system 140.

In one embodiment, recruiter 120 a operates the output hardwarecomponent shown in FIG. 2 to access resume management and recruitmentworkflow system 140 via network 200 and relies upon programmedinstructions residing in resume management and recruitment workflowsystem 140 to create a job that includes at least one requirement. Eachrequirement includes a skill or experience-related phrase that acandidate 110 a must possess and a minimum duration of time that thecandidate 110 a could have possibly practiced the skill orexperience-related phrase. Typically, a skill or experience-relatedphrase will appear in a resume in a context that implies a maximumduration of time that the candidate 110 a has practiced the skill orexperience-related phrase (i.e., the duration of time isnon-negligible). This mention of the experience-related phrase mightalso occur when candidate 110 a has studied the subject matterrepresented by the experience-related phrase. Although the phrase mightnot belong to a job with a duration of experience, theexperience-related phrase might also be mentioned in resume 115 a whencandidate 110 a is familiar with the phrase, had read about it, or otherreasons that deemed candidate 110 a to include it. If the context doesnot imply a duration of time (i.e., the duration of time is zero) orimplies a duration of time that is less than one time unit (i.e., theduration of time is negligible), the maximum duration of time associatedwith the skill or experience-related phrase will be set to zero. Thus,the skill or experience-related phrase will be attributed to the resume.However, the weight attributed to the skill or experience-related phrasewill be negligible. Situations that will cause the maximum duration oftime to be zero include candidate 110 a attending a class or seminar ona particular subject matter, or being familiar with a subject matter,but having no formal experience with the subject matter. After creatinga job, recruiter 120 a operates the output hardware component to accessresume management and recruitment workflow system 140 via network 200and verify the status of a job that was previously created and stored inresume management and recruitment workflow system 140. In anotherembodiment, resume management and recruitment workflow system 140automatically searches its database for any resume such as resume 115 athat matches the job requirement and displays resume 115 a and thecontact information for candidate 110 a on client computer 220 forrecruiter 120 a. Resume 115 a is a match if it contains a skill orexperience-related phrase in the job requirements and if the duration ofexperience derived from the context of the skill or experience-relatedphrase exceeds the maximum duration of time associated with the skill orexperience-related phrase in the job requirements. The phrase“maximum-total-duration” refers to the maximum possible duration of timethat candidate 110 a can take credit for a skill or experience-relatedphrase that appears in resume 115 a. XML table 540 only stores a portionof the maximum-total-duration because the actual maximum-total-durationof each experience-related phrase extracted from resume 115 a is roundedto the closest smaller duration tag in XML table 540. Thus, themaximum-total-duration for a skill or experience-related phrase is thesummation, over every job experience range in resume 115 a, of theduration of time for the skill or experience-related phrase. In anotherembodiment, recruiter 120 a searches resume management and recruitmentworkflow system 140 to locate matching candidates. Candidate 110 a is amatch for a job if resume 115 a includes each skill orexperience-related phrase, or the associated narrow phrases, thatcomprise the requirements for the job and where, for each skill orexperience-related phrase, the rounded maximum-total-duration ofexperience exceeds the required minimum duration of time. In oneembodiment, the output hardware component performs a job “bulk load” byaccessing resume management and recruitment workflow system 140 vianetwork 200 to transmit at least one job using a transmission protocolsuch as the file transfer protocol (FTP). In another embodiment, the jobbulk load is an automatic, scheduled process that occurs periodically.

FIG. 3 is a block diagram that illustrates the hardware and softwarecomponents comprising resume management and recruitment workflow system140 shown in FIG. 2. Resume management and recruitment workflow system140 is a general-purpose computer. Bus 300 is a communication mediumthat connects central processing unit (CPU) 301, resume database 302,data storage 303, and network adapter 304 to memory 305. Network adapter304 also connects to network 200 and is the mechanism that facilitatesthe passage of network traffic between resume management and recruitmentworkflow system 140 and network 200. CPU 301 performs the disclosedmethods by executing the sequences of operational instructions thatcomprise each computer program resident in, or operative on, memory 305.

FIG. 3 illustrates resume database 302 and data storage 303 as separatedevices however, it is to be understood that another embodiment is tostore the data in a single physical device that includes a separatelogical partition for resume database 302 and data storage 303. FIG. 3also illustrates resume database 302 and data storage 303 as internaldevices however, it is to be understood that in another embodiment thesedevices may each be external to resume management and recruitmentworkflow system 140 and accessible via a network connection. Resumemanagement and recruitment workflow system 140 also contemplatesdistributing resume database 302 over multiple storage devices to suitefficiency, performance, backup, and data warehousing requirements. Inone embodiment, resume database 302 utilizes a relational databasemanagement system such as Oracle 9i (version 9.2) by Oracle™. Anotherembodiment of resume database 302 may utilize a different databasemanagement tool that is either homegrown or publicly available andtraded. Another embodiment of resume database 302 may utilize anobject-oriented database management system such as FrameD, open sourcesoftware provided by SourceForge.net.

In one embodiment, the configuration of memory 305 includes userinterface program 310, search data entry program 311, resume parserprogram 312, phrase mapping program 313, job creation program 314,resume searching program 315, resume generator program 316, and resumemaker program 317. These computer programs store intermediate results inmemory 305 and transmit final results via bus 300 for storage in resumedatabase 302 or data storage 303. It is to be understood that in anotherembodiment the configuration of memory 305 may not simultaneouslyinclude these programs. CPU 301 coordinates loading a program when it isneeded, storing intermediate results, transferring data from one programto another, and unloading the program when it is no longer needed.

User Interface Program

User interface program 310 is a web-based graphical user interface suchas a hypertext markup language (HTML) web page that is accessible usinga general-purpose hypertext transfer protocol (HTTP) web browser such asNetscape Communicator, Microsoft Internet Explorer, or Mosaic. Inanother embodiment, user interface program 310 is a standaloneapplication program implemented using an interface tool such as Java, orMicrosoft Visual Basic. A user, such as candidate 110 a or recruiter 120a, operates user interface program 310 to access search data entryprogram 311, resume parser program 312, phrase mapping program 313, jobcreation program 314, resume searching program 315, resume generatorprogram 316, and resume maker program 317. A connection pool managementprogram such as the OC4j (version 1.0) portion of Oracle 9i manages theconnections between the user interface program 310 and the programscomprising resume management and recruitment workflow system 140. Adescription of these programs follows in the discussion of theflowcharts shown in FIGS. 6, 7, 8, and 9. In another embodiment, adifferent set of software and hardware tools can service the connectionand communication between the user or the user interface on one hand andthe programs listed in memory 305 of resume management and recruitmentworkflow system 140 on the other hand.

Search Data Entry Program

Search data entry program 311 is the tool that recruiter 120 a uses tocompose the criteria for searching resume database 302 to identifyresume 115 a as possibly satisfying the requirements for a job andidentifying candidate 110 a as a possible match for the job. Candidate110 a is a matching candidate if the resume of candidate 110 a containsthe set of requirements whose rounded-down maximum possible duration ofexperience that is derived from the resume exceeds the rounded-uprequired minimum duration of experience for each of the skill orexperience-related phrases required by the job and defined in thecomposed criteria. Again, this maximum possible duration as known to thesearchable XML table 540 is the rounded figure, which is referred to inthis disclosure as the rounded-maximum-total-duration of experience.Search data entry program 311 permits recruiter 120 a to enter thecriteria as a Boolean phrase of skill or experience-related phrases verysimilar to the data entry for search engines found in prior electronicsystems. Search data entry program 311 converts the Boolean phrase intoan intuitive layout of a list of required skill or experience-relatedphrases and possible alternative skill or experience-related phrases. Inanother embodiment, search data entry program 311 permits recruiter 120a to enter the criteria as the list of required skill orexperience-related phrases and possible alternative skill orexperience-related phrases. Search data entry program 311 then convertsthe intuitive layout of a list of required skill or experience-relatedphrases and possible alternative skill or experience-related phrases toa Boolean phrase. The data entered in Search data entry program 311 isthe input to resume searching program 315.

Search data entry program 311 will replay itself for the user allowingthe user to possibly enter another criteria, which will be utilized toremove candidates from the list of candidates who fit the previouslyentered criteria. In other words, search data entry program 311 acceptsmandatory criteria to which the qualifications of the resulting resumeshave to adhere and optional similarly laid-out criteria to which thequalifications of the resulting resumes cannot adhere. A resume adheringto the second criteria will be taken out of the list of resumes thatadhere to the firstly entered criteria.

In another embodiment, search data entry program 311 accommodateseducational requirements in its search criteria. Recruiter 120 a canspecify the required level of education and field of specialization.

In another embodiment, search data entry program 311 accommodates salaryrequirements in its search criteria. Recruiter 120 a can specify a rangeof required salaries.

Resume Parser Program

An input to resume parser program 312 is resume 115 a in an electronicformat. Suitable transmission means for carrying resume 115 a in anelectronic format include an electronic mail message, an uploaded file,a “cut and paste” block of text, and output from a program such asresume maker program 317. A transmission means such as an electronicmail message will include resume 115 a in an electronic format as anattachment. A transmission means such as an uploaded file comprisesresume 115 a in an electronic format that resume parser program 312receives via a protocol such as FTP. A transmission means such as “cutand paste” cuts from one location, or program running on ageneral-purpose computer, a block of text comprising resume 115 a andpastes the block of text into a resume input associated with userinterface program 310. A transmission means such as resume maker program317 is a specifically designed transmission means.

After receiving resume 115 a, resume parser program 312 parses theresume to extract certain attributes of the candidate and allexperience-related phrases and the maximum-total-duration of experiencefor each phrase. The attributes include the candidate's name, residenceor business address, telephone numbers (e.g., home, work, facsimile, andcellular), e-mail addresses, education data (e.g., degree, major, year,and school name), past employer data (e.g., employer name, last title,and period of employment), and salary (e.g., current and expected).

During the parsing of resume 115 a, resume parser program 312 identifiesthe beginning and end of the experience portion of resume 115 a. Thebeginning of the experience portion occurs when the word “experience,”or a synonymous word or phrase, appears as a heading in resume 115 a. Inanother embodiment, the beginning of the experience portion occurs atthe start of resume 115 a. The experience portion of resume 115 aby-passes narratives on education, objective, references, hobbies,summary of skills, name, address, phone numbers, electronic mailaddress, awards, non-experience related achievements, non-experiencerelated accomplishments, and other narratives that do not defineexperience over a specified duration of time. The end of the experienceportion occurs either when resume parser program 312 reaches the end ofthe resume or when a heading appears such as education, references,hobbies, or other headings that are not related to a job experience.

Resume parser program 312 extracts a start-date and an end-date from thedescription of each employer or job assignment in the experience portionof resume 115 a. A job assignment description is all the text thatstarts with the line that includes the start-date and ends at the linebefore the line that includes the next start-date. In anotherembodiment, a job assignment description in resume 115 a ends at the endof resume 115 a or one line before the appearance of anon-experience-related heading like references, education or hobbies inresume 115 a. The duration of experience, the term of experience, or theexperience range, is the duration of time resulting from the subtractionof the end-date for a job assignment description from the start-date forthe job assignment description. The start-date and end-date for a jobassignment description in resume 115 a appear on one line with aseparator in between. The separator can be a space, a character, or aterm or a phrase that means “to” (e.g., “Oct. 1, 1999 to Nov. 24, 2001”or “Oct. 1, 1999-Nov. 24, 2001”). In another embodiment, the start-date,separator, and end-date of a job assignment description in resume 115 aappear on two or three consecutive lines respectively. When only twolines are used the separator might be a null, implied by acarriage-return or line-feed, a hidden or unprintable character, ornon-existent. The maximum duration for any skill or experience-relatedphrase that appears in the description of that employer or jobassignment is the duration of time between the start-date and theend-date. If the start-date or the end-date are not present in thedescription, then resume parser program 312 sends an electronic messageto candidate 110 a requesting that candidate 110 a edit resume 115 a toinclude date ranges for each of the job assignment descriptions via userinterface program 310. In another embodiment, after receiving theelectronic message sent by resume parser program 312, candidate 110 acan edit resume 115 a on client computer 210 and retransmit resume 115 ato resume management and recruitment workflow system 140.

Resume parser program 312 also extracts each phrase contained in everyjob assignment description portion of resume 115 a. A phrase is asequence of one or more consecutive words. A word is a sequence of oneor more consecutive printable characters, numbers, or symbols. Extractedphrases from a job assignment description in resume 115 a can haveoverlapping words or overlapping sub-phrases. For example, if the phrase“Utilized Java and Oracle” appears in a job assignment description ofresume 115 a, the extracted phrases include “Utilized”, “Java”, “and”,“Oracle”, “Utilized Java”, “Java and”, “and Oracle”, “Utilized Javaand”, “Java and Oracle”, and “Utilized Java and Oracle”. Each extractedphrase from a job assignment description is a “skill orexperience-related phrase” and includes one or more consecutive words inthe description of the employer or job assignment. Eachexperience-related phrase is stored in resume database 302 and isassociated with a maximum possible duration of time (e.g., number ofmonths, or number of years) that candidate 110 a possessed theexperience-related phrase. An experience-related phrase includes ordescribes a skill, job location, title, department, responsibility,duty, action, achievement, accomplishment, relationship, product,consultation, group, team, field, space, area of endeavor, company,industry, technical package, or tool.

When resume parser program 312 finishes parsing resume 115 a, resumeparser program 312 sends an electronic mail message to candidate 110 athat includes a link to the parsed resume. Candidate 110 a reviews thecandidate attributes and the job experiences with their start-dates andend-dates as parsed by resume parser program 312 and is able to reviseany information that is incorrect. In one embodiment, candidate 110 asends the revised copy as a replacement resume.

Phrase Mapping Program

Phrase mapping program 313 maps all experience-related phrases to theirpossible synonyms and to their broad terms or broad phrases. Anexperience-related phrase includes, but is not limited to skills thatare utilized on the job, all functions that are performed on the job,and all other terms, acronyms, or phrases used in the job assignmentdescription. The information and narratives in the job assignmentdescription comprise statements or phrases that includes one or morewords or terms where a word or a term includes one or more characters,numbers, or symbols. Additionally, the word or the term would bepreceded and trailed by a delimiter such as a space or non-alphanumericcharacter. Phrase mapping program 313 maps individual words andconsecutive words (i.e., statements or phrases) to their possiblesynonyms and broad terms in the English language. A broad term or phraseis a term or a phrase that another term or phrase implies (i.e., a broadphrase is an implied phrase). For instance, “human” is a broad term for“soldier”, “banker” is a broad term for “lending officer”, and “medicaldoctor” is a broad term for “psychiatrist” or “neurologist”. Since“medical doctor” is a synonym for “physician”, the phrase “medicaldoctor” is a broad phrase for “physician” and “physician” is a broadterm for “medical doctor”. The phrase “speaks Spanish very well” is asynonym for the phrase “fluent in Spanish” and therefore, both phrasesare broader than each other. However, “fluent in Spanish” is a broadterm for “Spanish author”. Phrase A is a narrow term or phrase (i.e., anarrow phrase is an implying phrase) of phrase B when phrase B is abroad phrase of phrase A.

Phrase mapping program 313 is activated to map newly introduced mappingsto mapping table 530. Every time resume management and recruitmentworkflow system 140 adds a map of a phrase to another phrase in mappingtable 530, resume management and recruitment workflow system 140 looksup in resume database 302 all the resumes containing the narrow phrase.Resume management and recruitment workflow system 140 utilizes the newmapping to introduce the broad phrase to all the corresponding recordsin XML table 540. Note that, resume management and recruitment workflowsystem 140 will attempt to avoid duplication. If a job experiencecontains the phrase “Java”, and its newly mapped narrow phrase “JSP”,resume management and recruitment workflow system 140 will not add tothe maximum-total-duration of “Java” any duration contributed to by theexistence of “JSP” in the mentioned job. Conversely, if “Java” is notexplicitly listed in the job assignment description, the introduction ofa mapping making “JSP” a narrow phrase of “Java”, will cause the resumemanagement and recruitment workflow system 140 to add the duration ofexperience of the job containing “JSP” to the maximum-total-duration of“Java”.

The job assignment description or experience portion of a resume beginson the line that includes the start-date of a date range (e.g., “Oct. 1,1999 to Nov. 24, 2001” or “Oct. 1, 1999-Nov. 24, 2001”) and ends oneline before the line that includes the next start-date, if any. Theresume management and recruitment workflow system 140 will parsenumerous layouts of date ranges including those that might appear onone, two or three lines. Date ranges would initiate job experiences oncethe program determines that they belong within the experience portion ofthe resume. The verbiage of a job assignment description may also endwhen headings on non-job related matters appear. Such headings mayinclude education, references, and hobbies.

During the parsing of resume 115 a, resume management and recruitmentworkflow system 140 gives skill or experience-related phrases in a jobassignment description their due weight, in units of time representingthe maximum possible duration of experience. As mentioned above,experience-related phrases in a job assignment description can rangefrom one to any number of consecutive words. The duration between thestart-date and the end-date in the date range, which defined and startedthe job assignment description (or experience), is an attribute assignedto each of the experience-related phrases, mentioned above, along withtheir synonyms and broad phrases. For each experience-related phrase ina single resume, the length of time associated with each appearance ofthe experience-related phrase in a job experience is tallied to computea total duration for the experience-related phrase, its synonyms, orbroad phrases for the whole resume. By definition and inference, thistotal duration for each phrase represents the total duration ofexperience the owner of the resume could have had in the phrasedescribing, for example, a skill, job location, title, department,responsibility, duty, action, achievement, accomplishment, relationship,product, consultation, group, team, field, space, area of endeavor,company, industry, technical package, or tool. In other words, the totalduration of all the jobs, for each experience-related phrase appearingin resume 115 a of candidate 110 a, is the maximum duration ofexperience candidate 110 a could have had in the experience-relatedphrase. This maximum duration of experience is referred in thisdisclosure as the maximum-total-duration.

As previously defined, the term as “maximum-total-duration” for eachexperience-related phrase refers to the maximum duration perexperience-related phrase per resume, and therefore, per candidate. The“total” is for the possible multiplicity of jobs or experiences, inwhich the experience-related phrase appears, in resume 115 a. Theduration is at its possible maximum because resume 115 a and resumeparser program 312 provided all the possible experiences that containthe experience-related phrase. Additionally, during an individual job,candidate 110 a could have used an experience-related phrase containedin resume 115 a for at most the total duration of the job that containsthe phrase. The total of all the duration of all the jobs that containthe experience-related phrase is the maximum-total-duration ofexperience in the phrase for candidate 110 a.

The maximum-total-duration can be in any duration of time such as anumber of seconds, minutes, hours, days, weeks, months, years, ordecades. Resume management and recruitment workflow system 140 indexesthe experience-related phrase in an Extensible Markup Language (XML)table within a duration tag, that represents the largest duration tagamong a series of duration tags that is smaller than themaximum-total-duration of the experience-related phrase resulting fromresume 115 a. In one embodiment, the series of duration tags is chosenso as to optimize the search for candidates, the matching of candidatesto jobs, and to get the narrowest possible results without missing anysignificant number of resumes. For further discussion on the elements inthe series of the duration tags, please refer to the section in thisdisclosure on XML table 540. For example, if resume 115 a includes afirst job lasting 24 months and a second job lasting 36 months, eachexperience-related phrase in resume 115 a will have amaximum-total-duration attribute with a value of 24, 36, or 60 monthsdepending on whether the experience-related phrase appears in the firstjob, the second job, or both jobs. Any experience-related phrase thatappears in resume 115 a has only one value for itsmaximum-total-duration attribute.

When resume management and recruitment workflow system 140 receivesresume 115 a, the experience-related phrases are mapped to their broadphrases. For candidate search and job-to-candidate matching purposes,the newly derived broad phrases become new experience-related phrases inthe job assignment description that contains the originalexperience-related phrase from which the broad phrase was derived. Byrecursion, this mapping and implication process is repeated until theentire original and derived experience-related phrases have been mappedto all their possible and available broad phrases. This mapping processrefers to mapping table 530 as the thesaurus for implication to broadphrases. Since concatenating newly derived broad experience-relatedphrases does not occur within the job experience, neither a partialphrase of the newly generated experience-related phrases nor aconcatenation of a number of the newly generated experience-relatedphrases with each other, with the original experience-related phrases,or with parts thereof generate any newer experience-related phrases.After all the mappings are completed, the maximum-total-duration ofexperience for each experience-related phrase, original and new, istallied. The tallying of the maximum-total-duration of experience doesnot differentiate between an original skill or experience-related phrasethat appeared verbatim in the original resume and a derived broad phrasethat came about as a broad phrase through implication by the thesaurusmapping table 530.

Note that a broad experience-related phrase might not have existed inthe job that contained the original narrower experience-related phrase,from which it was derived, but it might exist in another job that doesnot contain the original narrower experience-related phrase. It istherefore deduced that while the maximum-total-duration of the originalnarrow experience-related phrase might only be the length of the jobthat contains the narrow experience-related phrase, themaximum-total-duration of the broad phrase will be the total duration ofboth jobs. In other words, the maximum-total-duration of a broadexperience-related phrase is at least, but can be more than, themaximum-total-duration of the narrow phrase that implied it. The mappingprocess, the tallying process of maximum-total-duration, and the storingand indexing of the experience related phrases in XML table 540 areperformed when the resume is received by resume management andrecruitment workflow system 140. Resume searching program. 315 fetchespreprocessed and already indexed data.

Job Creation Program

Job creation program 314 enables recruiter 120 a to utilize userinterface program 310 to enter data that describes a job and therequirements that a potential candidate should possess to be a match forthe entered job. Job creation program 314 stores the entered data in jobtable 520. In another embodiment, before storing the entered data, jobcreation program 314 activates resume searching program 315 to locatepotential candidates whose resume is a match to the entered job. Inanother embodiment, when resume 115 a arrives, the system examines theresume to determine whether it matches any job entered by recruiter 120a and stored in job table 520. If resume 115 a matches a job stored injob table 520, resume management and workflow system 140 automaticallyalerts recruiter 120 a, the creator of the job, of the arrival of resume115 a. Recruiter 120 a can review resume 115 a and send it to hiringmanager 130 a or flag resume 115 a for future reference. In anotherembodiment, after reviewing resume 115 a, recruiter 120 a does not sendresume 115 a to hiring manager 130 a and does not flag resume 115 a forfuture reference.

In another embodiment, job creation program 314 allows recruiter 120 ato clone a job. Recruiter 120 a will be able to enter or create a jobsimilar to an existing job upon the click of a button. The cloning willcreate a new job with the same specifications, required criteria, andhiring manager 130 a of the cloned job. The new job will have thecloning date for the creation date and will not share notes and jobactivities with the original job.

Resume Searching Program

Resume searching program 315 searches resume management and recruitmentworkflow system 140 for the resumes that meet input criteria. Resume 115a meets the input criteria if the rounded-up required duration of eachrequired experience-related phrase or its stated alternative in the jobcriteria is less than the maximum-total-duration tag of theexperience-related phrase or its alternative in resume 115 a. Thisexcludes those phrases specified by the excluding criteria where theexcluding criteria is laid out similar to the required includingcriteria.

For example, resume 115 a includes four jobs with a respective durationof 10, 20, 60, and 60 months. Using every combination of the four jobs,the only possible values for maximum-total-duration of experience (i.e.,term of experience) of any experience-related phrase are 60, 60, 120,20, 80, 80, 140, 10, 70, 70, 130, 30, 90, 90, and 150 months. If theduration tags are monthly, the XML tags that may include skill orexperience-related phrases, are <S060>, <S060>, <S120>, <S020>, <S080>,<S080>, <S140>, <S010>, <S070>, <S070>, <S130>, <S030>, <S090>, <S090>,and <S150>. After eliminating duplicate tags, the only possible XML tagsthat may include skill or experience-related phrases are <S010>, <S020>,<S030>, <S060>, <S070>, <S080>, <S090>, <S120>, <S130>, <S140>, and<S150>. When indexing, the nesting of the possible values of themaximum-total-duration tags is in ascending order. Between these tags,there are monthly tags that contain no skill or experience-relatedphrases. It is to be understood that the outer tags implicitly containthe skill or experience-related phrases contained in any of the innerhigher valued tags. The maximum-total-duration tag or attribute becomesa key. The resume identifier, the maximum-total-duration tag and theskill or experience-related phrase, to which it is an attribute, make upa virtual composite key to the XML table. In another embodiment, whenXML is not utilized, the resume identifier, the experience-relatedphrase, and each period less than or equal to the maximum-total-durationtag make up a composite key to an indexed table that points to resumetable 550.

In the criteria, resume searching program 315 allows for substitution ofan alternative for a required experience-related phrase. For resume 115a to be a match, the maximum-total-duration tag for the alternative inresume 115 a should be greater than or equal to the rounded-up requiredduration in the criteria of resume searching program 315.

In addition, resume searching program 315 implicitly allows for thesubstitution of a narrow skill or experience-related phrase of arequired experience-related phrase for the required experience-relatedphrase if the narrow experience-related phrase's maximum-total-durationtag in resume 115 a is greater than or equal to the rounded-up requiredduration of the required broader experience-related phrase. Thissubstitution is implicit because it does not take place at search time.Again, the substitution was accomplished when resume 115 a was receivedby resume management and recruitment workflow system 140 and the broadphrase was derived as an experience-related phrase wherever its narrowphrases existed as experience-related phrases. Upon receipt of resume115 a, phrase mapping program 313 of resume management and recruitmentworkflow system 140 has already included the broad phrase as anexperience-related phrase in the index. The maximum-total-duration tagof this broad newly generated experience-related phrase is at least themaximum-total-duration tag of the narrow experience-related phrase fromwhich it was implied. Therefore, once the maximum-total-duration tag ofthe newly derived broad experience-related phrase is more than itsrounded-up required duration by the search, resume 115 a becomes a matchto the job or search requirement. Although the original resume 115 a didnot contain the phrase in the search criteria, the developed index ofexperience-related phrases for resume 115 a does contain the phrase andwhen the maximum-total-duration tag is greater than or equal to therounded-up required duration, resume 115 a becomes a match.

According to one embodiment of the system, the “SELECT” statement of asearch will identify a candidate with 80 months of experience in anexperience-related phrase even if the search requires fewer months ofexperience (e.g., 65 months) in the experience-related phrase.Additionally, an experience-related phrase associated with a duration of70 months of experience will have its own nest and will not appear inthe 80 months nest or in the outer nests that represent 60, 30, 20, and10 months. Since the nesting includes every possible duration that thejob experiences of a resume can provide, each experience-related phraseof a resume will belong to one and only one nest. In a series of monthlynests, there will be additional nests to the ones mentioned above foreach month from one up to the highest number of months less than orequal the largest maximum-total-duration attribute among themaximum-total-duration attributes of the experience-related phrases inresume 115 a.

In another embodiment, resume searching program 315 accommodateseducational requirements in its search criteria. Candidate 110 a willsatisfy the required educational level when the highest degree that isearned by candidate 110 a is higher than the required educational level.The field of specialization is met when the degree for candidate 110 asatisfies the degree level requirement and is in the required field ofspecialization or in a narrower field that implies the required field ofspecialization as per mapping table 530. For example, candidate 110 asatisfies a requirement for a bachelor degree in biology when candidate110 a holds a Ph.D. in genetics.

In another embodiment resume searching program 315 accommodates salaryrequirements in its criteria. Resume searching program 315 selects asalary range unit for searching based upon the difference between themaximum and minimum salary for the required salary range. For example, asalary range unit can be a 20,000-dollar, 5,000-dollar, or 1,000-dollarunit. If the search is for an individual whose salary is between 250,000and 300,000 dollars, then the 20,000-dollar unit range will be searchedon first. Resume searching program 315 will search for multiples of 13,14 and 15 of the 20,000-dollar range. If a 12, but not 13 or higher,multiple of the 20,000-dollar range is found then, a 50 or 51 multipleof the 5,000-dollar range should be present for candidate 110 a to fitthe criteria. If a 13, 14 or 15 multiple are found of the 20,000-dollarrange then candidate 110 a meets the salary requirement criteria.

Resume searching program 315 performs a search and displays the resultof the search via user interface program 310. The search results includea job applicant's resume and the candidate attributes. User interfaceprogram 310 displays candidates in a split screen format with theattributes of a selected candidate from the list on one side of thescreen and the candidate resume on the other side of the screen. Thedefault display presents the latest copy of the candidate's incomingresume however, a user such as recruiter 120 a may also choose to viewother resumes for the same candidate, if available. The user may alsochoose to display the attributes and resumes of other candidates fromthe output list. The user may also scroll up and down the list selectingthe next and previous candidates on the list or directly jumping to acandidate on the list without scrolling.

For individual candidates, the candidate attributes, the candidateactivities, the candidate notes, a copy of one of the candidate resumes,and the results of the search will simultaneously remain displayed onthe screen while recruiter 120 a is flipping from one resume of thecandidate to another. User interface program 310 displays the samecorresponding information for each new candidate selected from theoutput list. The user is only limited by the size of the display screenwhen adjusting how much of the resume, candidate attributes, candidateactivities, and output of the search shows on the screen.

A candidate having more than one resume stored in resume table 550 ofresume database 302 will have different records in XML table 540corresponding to each resume. For the candidate to be a match to therequirements of a job or to a search, only one resume needs to match thejob requirements or the search criteria. The candidate will appear onceon the list of matched candidates.

Resume Generator Program

Resume generator program 316 uses the job data entered by job creationprogram 314 and resume 115 a to generate a new version of resume 115 afor candidate 110 a. In one embodiment, resume 115 a is a match to thejob requirements. In another embodiment, resume 115 a is not necessarilya match to the entered job. For example, resume 115 a may not include aphrase specified in the job requirements, but does include a narrowerphrase or a broader phrase for the phrase specified in the jobrequirements. In both cases, resume generator program 316 produces a newresume that highlights the skill or experience-related phrases requiredby the entered job and summarizes the job's requirements that are foundin resume 115 a.

Resume generator program 316 produces a resume summary that includes thetotal duration of work experience of candidate 110 a, the duration ofexperience that candidate 110 a possess in each skill orexperience-related phrase required by the job, the duration ofexperience that candidate 110 a possess in each of the phrases that arestated in the job requirements as alternates to the requiredexperience-related phrases, and the duration of experience thatcandidate 110 a possess in the narrow phrases of both the required skillor experience-related phrases and their alternates. Educationalbackground of candidate 110 a and the original summary from resume 115 aare also included in the newly produced summary. The summary alsoincludes prior job titles for candidates 110 a. The summary will alsocontain the duration of each of the job titles. Resume generator program316 makes use of the output of resume parser program 312 to derive thetotal duration of work experience and the duration of experience in eachof the required experience-related phrases, their alternatives, and thenarrow phrases of both. Additionally, resume generator program 316 makesuse of the output of resume parser program 312 to arrive at theeducational background of candidate 110 a and the job titles thatcandidate 110 a has held. The generated summary includes statements fromexisting summaries in the original resume. The newly generated resumecontains all the experiences found in the original resume. In the newlygenerated resume, resume generator program 316 highlights (e.g., changesthe text appearance to a bold font style) the experience-related phrasesthat are required by the job; the alternative phrases, which are statedin the job requirement, of the required experience-related phrases; andthe narrow phrases of both the required experience-related phrases andthe alternatives that are referred to herein. The newly generated resumewill only contain information derived from, extrapolated from, orimplied by the contents of resume 115 a.

Resume Maker Program

Resume maker program 317 enables candidate 110 a to make resume 115 a.Prior electronic systems and resume management and recruitment workflowsystem 140 provide the capability that enables candidate 110 a to entertheir name, address, home phone number, work phone number, facsimilenumber, cellular telephone number, electronic mail address, earneddegrees, field of specialization, the name of educational institutionsattended, graduation years, expected salary, and job history. Priorelectronic systems and resume management and recruitment workflow system140 allow candidate 110 a to chronologically enter a job history foreach prior employer. The job history includes a start and end date forthe employment, titles held by candidate 110 a, a description of thefunctions, responsibilities, and duties performed by candidate 110 a oran organization to which candidate 110 a belongs, accomplishmentsattributed to candidate 110 a, and tools that candidate 110 a usedduring the employment. Some prior electronic systems provide tool tipsin the form of samples of resumes, text from existing resumes, orinstructions on the expected content of the description of the performedfunction. However, resume maker program 317 is unique because itcomposes the description of the performed function for each of the jobsheld by candidate 110 a. A series of scripted questions that are part ofresume maker program 317 are administered to candidate 110 a. Thementioned scripted questions comprise multiple choice questions,questions that can only be answered with a yes or a no, and questionsthat can only be answered with a word, a phrase, a list of words, or alist of phrases. Resume maker program 317 then composes full sentencesfrom the answers to the scripted questions and makes up the descriptionof the performed function. Resume maker program 317 asks candidate 110 aa subset of the totality of questions that it contains. In order tocompose the description of the performed function, resume maker program317 dynamically chooses which questions to ask based on the answers topreviously asked questions. For example, resume maker program 317 askscandidate 110 a for their title at a job. If the response from candidate110 a is “programmer”, then resume maker program 317 will ask whichprogramming languages he used. However, if the response from candidate110 a is “manager”, then resume maker program 317 will ask how manypeople he supervised. Resume maker program 317 asks candidate 110 a tostate their individual responsibility, the responsibility of each personthey supervised, the department they worked in, and the company thatthey worked for. Resume maker program 317 asks candidate 110 a to statethe hierarchy of the organizations that he worked for and their titles(e.g., department, division, group, etc.). Resume maker program 317 askscandidate 110 a for the names of the tools, processes, machinery, orsystems that he used. Resume maker program 317 also asks candidate 110 afor the names of the tools, processes, machinery, systems, services,products, or duties he produced or performed. Resume maker program 317then composes full sentences out of the responses of candidate 110 a tothe questions asked by resume maker program 317. The resulting narrativeis then presented to candidate 110 a for proof-reading and editing. Nofurther questioning is then performed.

FIG. 4 illustrates the conversion of an exemplary paper resume into anexemplary XML resume. Paper resume 400 includes summary narrative 401,experience narrative 402, and closing narrative 403. Summary narrative401 includes resume headings and their content such as the executivesummary, career objective, education, professional summary, andprofessional certifications. Experience narrative 402 includes theemployer or job assignment descriptions that comprise the workexperience heading of the resume or a synonymous heading. Closingnarrative 403 includes resume headings and their content such ashobbies, security clearance, references, or technical skills. Resumemanagement and recruitment workflow system 140 converts paper resume 400into XML resume 410. Lines 2-40 of XML resume 410 represent theconversion of paper resume 400. Lines 3-17 of XML resume 410 representadministrative sections that identify the recruitment team ID, salaryrequirement, and creation date of XML resume 410. Lines 18-39 of XMLresume 410 define the experience-related phrases and education dataparsed from the paper resume 400. The <Work Experience> tag comprises aseries of nested <S_> tags. Each <S_> tag defines the experience-relatedphrases that correspond to a given duration of experience, i.e., term ofexperience. Thus, <S000> defines the experience-related phrases thatappear in paper resume 400, but correspond to a duration of time fromzero to less than the duration of the next nested <S_> tag. For example,the <S000> tag contains any skill or experience-related phrase thatoccurs in summary narrative 401 or closing narrative 403, but not inexperience narrative 402. <S003> defines the experience-related phrasesthat correspond to at least three months of maximum-total-duration ofexperience up-to the next <S_> tag. Note that any skill orexperience-related phrase that occurs in experience narrative 402 isassociated with a maximum-total-duration of three or more months.Further, <S006> defines those three or more months experience-relatedphrases that correspond to six or more months of maximum-total-durationof experience (i.e., any experience-related phrase that occurs inexperience narrative 402 and is associated with a maximum duration ofsix or more months). Thus, the skill or experience-related phrases arestored in nested tags and, when the experience-related phrase is indexedunder the tag, the skill or experience-related phrase, the correspondingduration tag and the resume identifier become a composite key to XMLtable 540. Furthermore, the resume identifier, themaximum-total-duration, and the associated experience-related phrasecomprise a virtual composite key to XML table 540. The example of XMLresume 410 shown in FIG. 4 includes a tag series where the first twoelements represent three months and six months. Also, XML resume 410represents a candidate whose total experience is more than six monthsbut less than the duration represented by the next or third series tagthat is higher than six months. Candidate 110 a whose resume 115 agenerated XML resume 410 does not have experience beyond or more thanthe third tag in the series. Therefore, the third and higher tags do notneed to appear in XML resume 410. XML resume 410 will include enough<S_> tags to span the entire duration of experience in the resume. Forexample, if a resume has two jobs, one lasting 24 months and the otherlasting 36 months, then the last internal nested <S_> tag will be <SXXX>where XXX is the highest valued tag, which is smaller or equal to 60months. Regardless whether there are corresponding experiences, all the<S_> series elements up to the highest tag are inserted in the XMLresume 410. Among them are the tags, which are the highest tags smalleror equal to each of the 24, 36 and 60 months correspondingly.

In one embodiment, the database management tool uses XML to index andstore the experience-related phrases and their maximum-total-duration ofexperience. In another embodiment, a different database tool may employanother tool to store the same information and make it rapidlyaccessible at search time.

In another embodiment, an experience-related phrase and the highest tagseries element that is smaller than the maximum-total-duration of theexperience-related phrase can be used as an indexed composite key to atable that points to resume 115 a. Additionally, for each such compositekey, more composite keys are generated from the experience-relatedphrase and each of the elements in the series that are less than orequal to the maximum-total-duration. All of these keys would be indexedin a table that points to resume 115 a in resume table 550. For example,for a tag series with data elements using a number system in months(i.e. one month, two months, three months, etc.). If candidate 110 a hasresume 115 a that contains the phrase “Java” at a maximum-total-durationof eight months, then eight composite keys will be generated, eachcontaining “Java” at one, two, three, four, five, six, seven, and eightmonths consecutively. A search or a job description that requires aminimum of five and a half months of experience will retrieve the recordcontaining the composite key of “Java” and six months via a direct hit.Again, no tallying of years of experience at search time will berequired. Additionally, “Java” could have been either an originalexperience-related phrase or a derived one via an implication thatutilized an original narrower phrase and mapping table 530.

FIG. 5 is an exemplary database structure for resume database 302 shownin FIG. 3. Resume database 302 comprises candidate table 510, job table520, mapping table 530, XML table 540, and resume table 550. In anotherembodiment, the system distributes the tables that comprise resumedatabase 302 among several computers configured similarly to resumemanagement and recruitment workflow system 140. In another embodiment,resume database 302 also includes tables containing candidate activitiesand notes, job activities and notes, recruiter table and level ofauthorization, recruiter activities and notes, as well as joining tablesto optimize the storage and performance of the system for an idealnormalization level. The distributed architecture will improve loadbalancing by distributing the processing required to populate, search,maintain, and backup the database.

Candidate Table

Candidate table 510 stores information related to each candidate such asdata extracted from the candidate's resume, data entered by thecandidate or an administrator on behalf of the candidate and notes andrecruitment activities entered by recruiter 120 a, pertaining to thecandidate. The data extracted from the candidate's resume and the dataentered by the candidate or an administrator on behalf of the candidateinclude personal identification and contact information, work experiencedata, job assignment descriptions, education credentials, job skills,and other experience-related phrases. The notes input by the recruiterinclude a synopsis of conversations between the candidate and therecruiter, the candidate's interview schedule, and the candidate'savailability status.

Job Table

Job table 520 stores information related to each job or position that ahiring manager needs to fill such as requirements for a job and notesrelating to candidates for the job. Job table 520 includes the employeror hiring manager identification and contact information, the recruiteridentification information, if different from the employer or hiringmanager, the requirements for the job, and the notes and recruitmentactivities pertaining to the job. The requirements for the job includethe work location, the duration of the job assignment, and the payscale. The requirements for the job also include required skill orexperience-related phrases and their alternatives, and the requiredminimum duration of experience for each required skill orexperience-related phrase, and the required minimum duration ofexperience for each stated alternative of each skill orexperience-related phrase. The requirements for the job allow for theexclusion of candidates, who fit criteria similar to the criteriaspecified herein as the required candidate's inclusion criteria. Otherinclusion and exclusion conditions may include geographic locations(states), area codes, salary ranges, and educational levels. The notesrelating to candidates for the job include a synopsis of conversationsbetween the candidate, the recruiter, and the hiring manager, as well asa list of the interviewees for the job.

Mapping Table

Mapping table 530 retains the broad and narrow phrases of phrasesencountered by resume parser program 312. A definition of “phrase”includes one or more consecutive words. Phrase A is broad phrase ofphrase B when phrase B implies phrase A. Likewise, phrase B is a narrowphrase of phrase A when phrase B implies phrase A. Phrase A and phrase Bare synonymous when phrase A is a narrow and broad phrase of phrase Band vice versa. A detailed discussion of mappings in this system is inthe disclosure of phrase mapping program 313. Mapping table 530 attemptsto include any phrase that might appear in a resume and that might havepossible broad and narrow phrases. Mapping table 530 is utilized byphrase mapping program 313 as a thesaurus of phrases implying otherphrases. Mapping tables 530 also includes the exceptions when asupposedly broad or narrow phrase is not broad or narrow because ofcontext. For instance, experience in ‘bank’ does not imply ‘banking’experience when ‘bank’ appears in the resume in the context of ‘databank’.

XML Table

XML table 540 retains the rows of XML resume 410 and points to resumetable 550, which contains resume 115 a, in a one-to-one correspondencebetween XML resume 410 of XML table 540 and resume 115 a of resume table550. Resume parser program 312 and phrase mapping program 313 convertresume 115 a of candidate 110 a into the exemplary rows comprising XMLresume 410 as shown in FIG. 4. For each resume, there is a resumeidentifying tag followed by extracted attributes from resume 115 a forcandidate 110 a. Within the outer <resume> tag, there is tag <S000>,which contains all the narratives that did not belong to job experiencesthat have a start-date and an end-date or a distinct duration of time.Nested within the <S000> tag are tags that labeled by duration of timeand nested in an ascending order of the value of the duration. These are‘duration tags’ and have a length that is a duration of time. Theduration tags are system-wide predefined to constitute an ascendingseries of values for duration. These duration tags can be in any unit oftime. Again, the values of the data elements of the series are inascending order with no other pattern. Their selection is established toproduce optimal performance. Whether it is a subset or a superset ofanother phrase within resume 115 a, each experience-related phrase isidentifiable as an entity and is stored in XML resume 410. Although thewords of an experience-related phrase might overlap with the words ofother experience-related phrases, as a separate entity, eachexperience-related phrase appears once and only once in XML resume 410of resume 115 a. For each resume 115 a, resume parser program 312 andphrase mapping program 313 store experience-related phrases within aduration tag whose value, among the duration tags in the series, is thelargest that is smaller than the maximum possible duration of experienceof the experience-related phrase. Again, the maximum possible duration(maximum-total-duration) of experience of an experience-related phraseis the total duration of all the jobs during which theexperience-related phrase appeared in resume 115 a. Themaximum-total-duration is the maximum duration that can be derived fromresume 115 a for the experience-related phrase.

The value of duration tags is an ascending series of numbers eachrepresenting a time period. Since resumes traditionally contain jobstart-dates and end-dates down to a specific day, the value of theduration tags can possibly be in days. In another embodiment, the valueof individual duration tags is in a number of seconds, minutes, hours,days, weeks, months, years, or decades. An example is that the value ofa duration tag can be five days; two and a half months; and one year,three quarters, and half a month. For all resumes within a singleimplementation of the resume management and recruitment workflow system140, the chosen series of values for the duration tags is the same. Inanother embodiment, a different series can be chosen for each recruiter120 a or each team 125 as long as they are searching within theirexclusive private pool of resumes. One of the factors in establishingthe values of the series of the duration tags is performance. Forexample, smaller values of the duration tags will result in largerconsumption of storage space by the XML table 540 and vice versa.Smaller values will create extra work for resume parser program 312 andvice versa. When the values of the duration tags are smaller, resumesearching program 315 retrieves a more accurate list of matchingcandidates and vice versa.

In another embodiment, each experience-related phrase and itsmaximum-total-duration tag make up an indexed composite key to a table(referred to in this disclosure as the substitute-to-XML-table) thatsubstitutes XML table 540 but likewise points to resume table 550. Foreach experience-related phrase, the substitute-to-XML-table includeadditional records that have an indexed composite key comprising theexperience-related phrase and each value of the tag series that wouldhave been an XML duration tag and is less than themaximum-total-duration. In other words, the series duration values,which would have been used in the XML duration tags and that are smallerthan the maximum-total-duration, are utilized in conjunction with theexperience-related phrase to make up composite keys to thesubstitute-to-XML-table. For each such distinct composite key, there isa record in the substitute-to-XML-table pointing to resume table 550. Asearch that requires a minimum duration of experience in anexperience-related phrase would first locate in the series of values ofduration tags the smallest value that is larger than the requiredminimum duration. Then the experience-related phrase along with thelocated tag value will make up a search key to thesubstitute-to-XML-table. Resume 115 a contained in resume table 550 ispointed to by the substitute-to-XML-table record whose composite key ismade up of the required experience-related phrase and the located(duration tag) value in XML resume 410. It is to be understood that thissingle experience-related phrase search scenario is expandable toinclude more than one experience-related phrase in a Boolean orintuitive layout as per the acceptable input to resume searching program315.

In one embodiment, the search criteria entered in resume searchingprogram 315 generates a virtual look-up in XML table 540 orsubstitute-to-XML-table for each experience-related phrase mentioned inthe criteria. In another embodiment, the output of the multiple look-upsfor the multiple experience-related phrases are combined to result in alist of resumes that are true to the total criteria and are a match tothe search or job requirements. In another embodiment, differentdatabase management systems handle the prioritization and concurrency ofthe execution of searches that require a join between multiplesub-output of the same search in differing manners. The utilization ofXML to store and retrieve resume information is independent of and hasno relation to the utilization of XML by the XML resume library systemsponsored by the Open Source software development web site, the HR-XMLConsortium, SourceForge.net, or any other implementation that utilizesXML to store resume or career-related data.

XML table 540 also stores the date on which the resume was received orlatest updated and refers to this date as the date created. XML table540 stores this creation date multiple times in individual units oftime. The units of time can be seconds, hours, days, months, years, orany fraction, multiple or combination thereof. So, the creation date isa point in time, which is a multiple of a unit of time, so many unitsaway from an origination date of the count. For instance, theorigination date could be Jan. 1, 1980 and the creation date could beMar. 10, 1983. In month units of time, the Mar. 10, 1983 will be 39. The39 represents 39 months away from Jan. 1, 1980.

XML table 540 also stores the educational degree in nested tags thatrepresent all the degrees lower or equal to the degree earned bycandidate 110 a. Within the nest, the field of specialization, the yearthe degree was earned, and the school from which it was earned arestated.

XML table 540 also stores the salary desired by candidate 110 a. XMLtable 540 stores the desired salary multiple times in individual dollarunits. The dollar units can be in individual dollars or in multiples ofdollars. For example, the stored desired salary can be 36,000 individualdollars or equivalently seven five thousand dollars, where individualdollars and five thousand dollars are the dollar units respectively.Resume management and recruitment workflow system 140 rounds the desiredsalary to the highest multiple of a dollar unit that is smaller than thedesired salary.

Resume Table

Resume table 550 retains resume 115 a in its original shape, form andcontent. Resume table 550 retains an unaltered copy of resume 115 a, asit was received from the sender by resume management and recruitmentworkflow system 140, whether resume 115 a was electronically mailed,cut-and-paste, uploaded, bulk loaded, or generated by resume makerprogram 317 for resume management and recruitment workflow system 140.The copy of resume 115 a in resume table 550 gets displayed for therecruiter or other users to view in step 630 and in step 930.

FIG. 6 is a flow diagram of an embodiment of resume management andrecruitment workflow system 140 receiving a job requirement fromrecruiter 120 a or adding a resume from candidate 110 a. Recruiter 120 ainitiates the process of adding a job to resume management andrecruitment workflow system 140. Recruiter 120 a enters a list ofrequired and alternative experience-related phrases and the minimumduration of experience that is required in each phrase for candidate 110a (step 610). For each required experience-related phrase in the list,recruiter 120 a may specify a list of alternate experience-relatedphrases. For example, if recruiter 120 a wishes to consider candidateswith a minimum two years of experience in the Java programming language,recruiter 120 a may list alternative skill or experience-related phrasessuch as one and a half years of experience in C++ or three years ofexperience in PASCAL. Thus, a search will return any candidate with twoyears of experience in Java, the required skill or experience-relatedphrase, one and a half years of experience in C++(a listed alternative)or three years of experience in PASCAL (another listed alternative).Recruiter 120 a may exclude candidates who meet similarly structuredcriteria of a different set and/or combination of experience-relatedphrases. An example would be: two years in Java and either one and ahalf years in C++ or three years in PASCAL, but not to include thosecandidates who have two years in brokerage and one year of management orwhose Java experience is over five years. In addition, recruiter 120 amay also list some attributes, such as educational level or field ofspecialization, geographic location, and desired salary, which would berequired of candidate 110 a to be a match to the job.

Resume management and recruitment workflow system 140 determines whetherrecruiter 120 a wants to save the entered job description to resumedatabase 302 (step 615). If recruiter 120 a requests to save the job,resume management and recruitment workflow system 140 stores the enteredjob information (step 620), as well as all the listed requirements, andmatches the requirements for the new job to resume database 302 (step625). If recruiter 120 a does not request to save the job, resumemanagement and recruitment workflow system 140 performs an instantaneouscheck of resume database 302 and matches the requirements for the newjob to resume database 302. Recruiter 120 a views each resume retrievedby the search performed (step 630). Recruiter 120 a qualifies thematched resumes and presents the qualified resumes to hiring manager 130a (step 670). Recruiter 120 a documents any interview or hiring as partof a candidate's history, if desired. Note that recruiter 120 a andhiring manager 130 a can be the same and each may be the employer or arepresentative acting on behalf of the employer.

FIG. 6 also provides an overview of the process of transmitting resume115 a for candidate 110 a to resume management and recruitment workflowsystem 140. Candidate 110 a or somebody on behalf of the candidateinitiates transmission of resume 115 a to resume management andrecruitment workflow system 140. Resume management and recruitmentworkflow system 140 extracts the candidate's attributes from resume 115a, as well as the candidate's experience-related phrases and themaximum-total-duration of experience for each experience-related phrase(step 645). Resume management and recruitment workflow system 140 storesresume 115 a in resume table 550 and the extracted information in XMLtable 540 of resume database 302 (step 650). In addition, resumemanagement and recruitment workflow system 140 stores information on jobexperiences such as title, company name, department name, location,other job header data, and the job duration in candidate table 510 ofresume database 302. Resume management and recruitment workflow system140 stores the output of resume parser program 312 in candidate table510 of resume database 302. Again, the output of resume parser program312 includes each experience-related phrases and the associatedmaximum-total-duration of experience tag and all the broad phrases ofthe experience-related phrases and the maximum-total-duration ofexperience tags of the broad phrases. Resume management and recruitmentworkflow system 140 matches the newly received resumes to any activejobs listed in resume database 302 (step 655). Again, each matchingcandidate has a resume that contains the set of experience-relatedphrases or their narrow terms at a maximum-total-duration of experiencethat exceeds the required minimum duration of experience for each of theexperience-related phrases or their alternatives that are required bythe job. Resume management and recruitment workflow system 140 alertsrecruiter 120 a if there is a match between the resume and the jobposted by recruiter 120 a (step 660). Recruiter 120 a qualifies thematched resumes and presents the qualified resumes to hiring manager 130a (step 670). Recruiter 120 a may document any interview or hiringactivity as part of a candidate's history and job's history, if desired.Note that recruiter 120 a and hiring manager 130 a can be the sameperson and each may be the employer or a representative acting on behalfof the employer.

FIG. 7 is a flow diagram of an embodiment of resume management andrecruitment workflow system 140 displaying a list of jobs, searchingthrough previously entered and stored job descriptions and theirspecifications, and adding a new job and its description andspecification. A recruiter begins using the system by selecting acategory for viewing jobs (step 705). A member of a recruitment team(e.g., recruiter 120 b of recruitment team 125) may select to view allthe open jobs for every member of the recruitment team (e.g., recruiter120 b and recruiter 120 c) (step 710). A member of a recruitment team(e.g., recruiter 120 b of recruitment team 125) may select to view allthe jobs ever created (i.e., both open and closed jobs) by any member ofthe recruitment team (e.g., recruiter 120 b, or recruiter 120 c) (step715). A recruiter (e.g., recruiter 120 a, recruiter 120 b, or recruiter120 c) may select to view all, open jobs posted by the recruiter (step720). A recruiter (e.g., recruiter 120 a, recruiter 120 b, or recruiter120 c) may select to view all the jobs ever created (i.e., both open andclosed jobs) by the recruiter (step 725). A recruiter (e.g. recruiter120 a, recruiter 120 b, or recruiter 120 c) may select to view all theclosed jobs owned by the recruiter (step 730).

Once the recruiter has made a selection and resume management andrecruitment workflow system 140 displays a list of jobs, the userdecides whether to filter the jobs by the posting date (step 735). Ifthe recruiter requests to filter the jobs by the posting date (step740), the jobs are actually filtered and a list is displayed to therecruiter (step 745). If the recruiter does not want to filter the jobsby the posting date (step 745), the unfiltered jobs are displayed in alist to the recruiter. The recruiter has an option (step 750) to eitheradd a new job to resume database 302 (step 755), search for an existingstored job based on specific criteria (step 760), or view a job from thedisplayed list of jobs (step 770). The recruiter may view a list ofcandidates who match the job (step 780). Each matching candidate has aresume that contains the required set of experience-related phrases,their alternatives, or the narrow terms of the originalexperience-related phrases or their alternatives at amaximum-total-duration of experience that exceeds the required minimumduration of experience for each of the experience-related phrases ortheir alternatives that are required by the job. The recruiter may viewthe resume of a candidate that matches the displayed job (step 780).

FIG. 8 is a flow diagram of an embodiment of resume management andrecruitment workflow system 140 parsing resume 115 a, storing its parseddata in resume database 302 and matching resume 115 a and its candidate110 a to a stored job, if applicable. Candidate 110 a initiates theposting of a resume. Candidate 110 a selects one method for postingresume 115 a to resume management and recruitment workflow system 140(step 805). Resume management and recruitment workflow system 140accommodates candidate 110 a sending the resume as an attachment to anelectronic mail message (step 810) or making a digital copy of theresume in another application and pasting the digital copy into userinterface program 310 (step 815). Resume management and recruitmentworkflow system 140 also accommodates candidate 110 a operating userinterface program 310 to browse a file directory listing, select a filethat includes the resume, and upload the resume to the resume managementand recruitment workflow system 140 (step 820). Resume management andrecruitment workflow system 140 also accommodates a user uploading atleast one resume in a bulk upload (step 825) or, if candidate 110 a doesnot have a prepared resume, operating resume maker program 317 to authora new resume (step 835).

After candidate 110 a uploads resume 115 a to resume management andrecruitment workflow system 140, the process flow shown in FIG. 8 parsesthe resume (step 840). Steps 840, 850, and 855 represent resume parserprogram 312 and phrase mapping program 313. Resume management andrecruitment workflow system 140 extrapolates attributes for candidate110 a (step 850). Resume management and recruitment workflow system 140computes the maximum length of experience (i.e., maximum-total-duration)that each of the experience-related phrases can have and assigns themaximum-total-duration XML tag as an attribute to the experience-relatedphrase for resume 115 a of candidate 110 a (step 855). Anexperience-related phrase is any one or more consecutive words thatappear in a job assignment description within a resume. All the broadphrases of experience-related phrases are also experience-relatedphrases.

Resume management and recruitment workflow system 140 stores everyexperience-related phrase that candidate 110 a lists in resume 115 a,including all broader phrases (step 860) in XML table 540. In XML table540, resume management and recruitment workflow system 140 writes theexperience-related phrase within a duration tag whose value is smallerthan the maximum-total-duration of the experience-related phrase and isthe largest in a pre-defined series of duration tags. Resume managementand recruitment workflow system 140 matches resume 115 a to all activeopen jobs (step 865). If resume management and recruitment workflowsystem 140 determines that resume 115 a matches the requirements of anopen job (step 870), resume management and recruitment workflow system140 proceeds to notify recruiter 120 a (step 875). In one embodiment,the notification means is an electronic mail message. However, anymethod of communication (e.g., telephone, facsimile, or letter carrier)by recruiter 120 a or automatically by resume management and recruitmentworkflow system 140 that notifies candidate 110 a of the match issufficient. If resume management and recruitment workflow system 140does not find a match, the process ends with no further action.

FIG. 9 is a flow diagram of an embodiment of resume management andrecruitment workflow system 140 searching resume database 302 for a listof resumes and, therefore, candidates that meet a set of requirementsinput by recruiter 120 a. One shown candidate at a time, resumemanagement and recruitment workflow system 140 allows recruiter 120 a toview, the attributes, experiences and resumes of all or chosencandidates from the list. Recruiter 120 a initiates the search forresume 115 a that meets a given search criteria.

Recruiter 120 a enters a list of all the skill or experience-relatedphrases sought in candidate 110 a (step 905). Recruiter 120 a may entera skill or experience-related phrase required in a candidate byproviding an exact description, a representative phrase of it, or anyother acronym, skill name or experience-related phrase that may describeor stand for the skill or the experience-related phrase. Recruiter 120 amay enter one or more alternative experience-related phrases that canidentify alternates to the previously entered and requiredexperience-related phrase. Each of these alternatives can fullysubstitute the need for the original phrase in the resume and can,therefore, satisfy the full need of the requirement for the originalskill or experience-related phrase. For example, if the original phraseis “Oracle”, recruiter 120 a might be satisfied with a resume thatcontains “Sybase” or “Informix” as possible alternatives. Note that thissearchable alternative to the experience-related phrase in resumemanagement and recruitment workflow system 140 should not be confusedwith the phrase mapping feature of the resume management and recruitmentworkflow system 140. At search time, narrow phrases of the requiredexperience-related phrase or its stated alternatives by recruiter 120 aare implicit alternatives in resume 115 a to the requiredexperience-related phrase or its stated alternatives by recruiter 120 a.Thus, the narrow phrases are transparent to recruiter 120 a. Resumemanagement and recruiter workflow system 140 will retrieve resumes thatcontain the narrow phrases of the required experience-related phrases orthe narrow phrases of the alternatives stated by recruiter 120 a asmatching resumes. The term ‘implicit’ is utilized because the broadphrase might not exist in resume 115 a. When resume 115 a arrives,resume management and recruitment workflow system 140 maps the narrowphrase to its broad phrases and additionally inserts the broad phrasesin XML table 540. These broad phrases might be the phrases that compriseall or part of the search criteria. Although these broad phrases mightnot have existed in resume 115 a or in all the resume jobs in which theyneed to exist, they caused the match to occur and therefore the narrowphrases had an indirect implicit effect on satisfying the match.

Furthermore, recruiter 120 a may provide a required minimum length ofexperience for any of the skill or experience-related phrases thatcomprise the search, whether the phrases are those originally requiredor their alternatives as stated by recruiter 120 a. To fulfill therequirement of recruiter 120 a, the required minimum length ofexperience of the experience-related phrase or its stated alternativeshas implications on the requirement of the narrow phrase, referred to inthe previous paragraph, whether the narrow phrase is combined with itsrequired broad phrase or not. Again, note that the mapping of the narrowphrase to the broader required phrase took place when the resume wasreceived by resume management and recruiter workflow system 140 and notat search time. Resume parser program 312 and phrase mapping program 313had already mapped the narrow phrase, which appeared in the originalincoming resume 115 a of candidate 110 a, to all its possible broadphrases among which happened to be the required phrase or itsalternatives. These broad phrases were stored in XML resume 410 asexperience-related phrases and their maximum-total-duration is at leastthe maximum-total-duration of the narrow phrase from which they werederived. Thus, the value of duration tag of the broad phrases is atleast the value of the duration tag of the narrow phrase from which theywere derived. For example, a resume might have two jobs; one three-yearjob containing Java and another four-year job containing JSP. Let's saythat mapping table 530 has Java as a broad phrase of JSP. Assuming thatJSP does not appear in the three-year job, the maximum-total-duration ofJSP is four years while Java is seven years. Assuming that the durationtag series is small enough, a search that requires a minimum of fiveyears of Java will be satisfied thanks to the JSP narrow phrase thatcontributed an additional four years to the Java three years mentionedexperience to a total of seven years. That is, at search time, thenarrow phrases contributed to the expansion of the value of the durationof the broad phrase and therefore, enabled the broad phrase to meet therequirement of recruiter 120 a.

Resume management and recruitment workflow system 140 determines whetherrecruiter 120 a entered the search criteria in the intuitive layout oras a Boolean expression (step 910). If recruiter 120 a entered thesearch data in an intuitive layout, the process converts the search datato a Boolean expression (step 915) and displays both the intuitivelayout and the Boolean expression to recruiter 120 a. If recruiter 120 aentered the search data as a Boolean expression, the process convertsthe search data to an intuitive layout (step 920) and displays both theBoolean expression and the intuitive layout to recruiter 120 a. Thus,whether the user chooses the intuitive layout or the Boolean expressionas the method of data entry, resume management and recruitment workflowsystem 140 converts the search data to the other method of data entryand displays both forms of the search expression to recruiter 120 a.

In the intuitive layout form of data entry, recruiter 120 a enters alist of phrases required for a job opening into resume management andrecruitment workflow system 140. Resume management and recruitmentworkflow system 140 combines the phrases that comprise the list using aBoolean “and” between each phrase. Since each phrase may also includealternatives, resume management and recruitment workflow system 140combines the alternatives using a Boolean “or” between each alternative.The resulting expression is the intersection (i.e., Boolean “and”) of anumber of unions (i.e., Boolean “or”) of phrases. The expression “(A orB) and (C or D or E)” is an example that might result from the intuitivelayout of data entry of the search criteria.

Additionally, note that this representation of an intersection of anumber of unions of phrases is a representation that can cover the unionof a number of intersections of phrases. For example, if the requirementis for the union of the intersection of phrases: “(A and B) or (C and Dand E)”, then the requirement is equivalent to the followingintersection of unions acceptable as an input to the intuitive layout ofdata entry for the criteria: “(A or C) and (A or D) and (A or E) and (Bor C) and (B or D) and (B or E)”. It is to be understood that “(A and B)or (C and D and E)” is equivalent to “(A or C) and (A or D) and (A or E)and (B or C) and (B or D) and (B or E)”. This conversion is importantbecause the intuitive layout form of data entry accepts a required listof and'ed phrases each of which is or'ed with a number of alternatives.Or'ing of lists of and'ed phrases will be converted to and'ing of or'edphrases. Note that the intuitive layout form of data entry referred tohere, which is and'ing the or's, is closer to the way people select ameal from a multiple course menu. We select one appetizer from a list ofor'ed few, one main course from a list of or'ed few, one drink from alist of or'ed few, one desert from a list of few, and so on. Then, wejoin (and) the selected list of items, skipping some at times. Forexample, we might pass on the drink. The selection from this food menuis the and'ing of or'ed items. In fast food chains, we select meals,each of which, make up an and'ing of items. We can select one or more ofthe meals through a choice from an or'ing of the and's. Again, as statedabove, both methods of setting up a search criteria can be representedor converted to the intuitive layout of and'ing multiple or's.

Since resume management and recruitment workflow system 140 accommodatesthe intersection of multiple unions and, thereby the union of multipleintersections along with the negation or exclusion of a similarintersection or union, the search covers all possible search criteriathat a job opening might require of an individual. Required complexnested Boolean phrases can be easily broken down to the intersection ofunions or the union of intersections and therefore can all be covered bythe intuitive layout. Purging the output list of resumes from rejectedresumes, which are true to another combination of phrases that adhere toanother Boolean expression or input through the intuitive layout,accommodates the possible negation in a Boolean expression. In otherwords, the output of a list of required skill or experience-relatedphrases and their alternatives can be cut down by the resumes thatadhere to some unwanted similar combination of phrases.

The intuitive approach for entering the search improves the usability ofresume management and recruitment workflow system 140 because recruiter120 a does not need to type a Boolean expression. On the other hand, theBoolean expression approach for entering the search improves theflexibility of resume management and recruitment workflow system 140.Whether recruiter 120 a enters a list of required skill orexperience-related phrases and alternatives or enters a Booleanstatement, resume management and recruitment workflow system 140converts one form to the other and displays both forms to the user.Resume management and recruitment workflow system 140 also provides theuser with interface tips and feedback on obvious errors in data entry.Additionally, resume management and recruitment workflow system 140provides spelling checks for phrases searched and for notes on thecandidates.

Resume management and recruitment workflow system 140 displays a list ofcandidates meeting the criteria entered by recruiter 120 a (step 925).The system provides a split-screen view that displays the candidateattributes in one portion and the individual resume in the other portion(step 930). The resumes are displayed for each candidate that recruiter120 a selects to view by selecting one candidate's name from the list ofthe candidates displayed by resume management and recruitment workflowsystem 140. Recruiter 120 a chooses which resume to view from the listof the candidates that meet the search criteria (step 940).

Resume management and recruitment workflow system 140 determines whetherrecruiter 120 a wants to view additional resumes for other possiblecandidates (step 945). If recruiter 120 a decides to view additionalresumes, the process flow returns to step 930 otherwise, the processflow ends.

According to one embodiment, resume management and recruitment workflowsystem 140 incrementally displays the output of a search for resumesthat fit the search criteria. Resume management and recruitment workflowsystem 140 retrieves and displays the outcome of incremental searchesfrom the resume database 302. The initial batch of resumes displayedwill begin with the most recently received or updated resume and proceedbackward for a period of time. Subsequent batches of resumes retrievedby resume management and recruitment workflow system 140 will proceedbackward further in time. Each search performed by resume management andrecruitment workflow system 140 increases the period of time that thesearch covers by going back further in time. Thus, the backwardincremental search will have longer leaps into the past as theincremental search continues. Each increment will start where the otherincrement ended. The search is complete either following an exhaustivesearch of resume database 302 or the attainment of specified number ofresumes that meet the needs of recruiter 120 a.

FIG. 10 is a data flow diagram of an embodiment of resume management andrecruitment workflow system 140 illustrating an exemplary job search.Candidate 110 a (shown as box 1000) populates resume database 302 byposting a resume to resume management and recruitment workflow system140. Recruiter 120 a (shown as box 1005) stores a description for a jobin resume database 302. Recruiter 1005 also initiates a database search1010 for matched candidates 1015 by sending the job requirements. Thesearch sends a query to resume database 302 and receives a result set.Resume management and recruitment workflow system 140 stores the resultset as matched candidates 1015. Resume management and recruitmentworkflow system 140 accesses matched candidates 1015 to display theresults to recruiter 120 a. When recruiter 120 a is interested in acandidate, recruiter 120 a retrieves the resume from matched candidates1015.

FIG. 11 is a data flow diagram of an embodiment of resume management andrecruitment workflow system 140 illustrating the transmission of aresume from candidate 110 a to resume database 302. Initially, candidate110 a (shown in box 1100) provides a resume to resume management andrecruitment workflow system 140. Candidate 1100 may input the resume toresume management and recruitment workflow system 140 using electronicmail 1105, cut and paste 1110, upload 1115, bulk load 1120, or useresume maker 1125. Resume management and recruitment workflow system 140receives the resume in word converter 1130. Word converter 1130 convertsthe resume into common document formats such as ASCII text, HTML, RichText Format (RTF), or the like. Word converter 1130 sends the text formof the resume to the resume parser 1140. Word converter 1130 also sendsRTF and the HTML versions of the resume to the traffic controller resumeservlet 1150. Resume parser 1140 parses the resume in text format tosearch for any and all information relating to a candidate workexperience, generates the candidate's attributes, and forwards the datato the traffic controller resume servlet 1150.

The traffic-controller resume servlet 1150 forwards all the gatheredinformation in text format to work experience converter and XMLgenerator 1160. Traffic-controller resume servlet 1150 also sends thecandidate's attributes to resume database 302 for storage. As discussedabove, recruiters ultimately use resume database 302 to search forcandidates that may satisfy the recruiter's search criteria, or bycandidates to search for desired job openings.

In one embodiment, when matching incoming resumes to job requirementsresume management and recruitment workflow system 140 utilizes a searchmechanism that reverses the operation of a SELECT statement. The searchretrieves all the jobs whose requirements are met by the incoming resume(i.e., the executed SELECT statement retrieves the incoming resume),among other resumes, in its output. This search is the reverse of asearch for candidates who meet a job's criteria (i.e., the search is thereverse of a SELECT statement that results in a list of candidates thatfit the job and are true to the SELECT statement). Resume management andrecruitment workflow system 140 matches the incoming resume to theactive jobs by implicitly executing all SELECT statements of all openand active jobs to determine which jobs would have picked up thecandidate as a match.

In accordance with one embodiment of the present invention, eventsentered by recruiter 120 a as events along with the various activitiesof presenting resumes to clients, scheduling interviews and schedulinghires are recorded in a private consolidated calendar for each of therecruiters.

In accordance with one embodiment of the present invention, resumemanagement and recruitment workflow system 140 contains private,semi-private, and public resumes. Private ownership may belong to arecruitment team. Some resumes may belong to individual recruitmentteams. Other resumes may still be private, but shared among severalrecruitment teams. The majority of the resumes are public resumes.Recruitment team members will have access to both the team's privateresumes and public resumes and may share notes or activities on anyresume or candidate among their individual team members. Team membersmay not share notes and activities across team boundaries even if theresume is a public resume. Only the owners of a job requirement may beable to modify a job.

FIGS. 12A through 12M are exemplary screen images from an implementationof resume management and recruitment workflow system 140. FIG. 12Aillustrates an exemplary screen image depicting the options of what arecruiter may view in respect to the job vacancies for which therecruiter or the recruiter's company is responsible. FIG. 12Billustrates an exemplary screen image depicting other options forsearching for different jobs by recruiters using selected criteria. FIG.12C illustrates an exemplary screen image for allowing recruiters to adda new job listing. FIG. 12D illustrates an exemplary screen image forviewing a job from a displayed list of jobs. The recruiter may click ona link to “View Matched Candidates” to display the candidates that havebeen matched to this job based on the required skill orexperience-related phrases and length of time entered by the recruiter.FIG. 12E illustrates an exemplary screen image for viewing the matchedcandidate screen where the most recent candidates that fit the requiredskill or experience-related phrases appear. The recruiter is able toclick and check off the candidates they have viewed in addition to beingable to view which candidates have notes in the system on them alreadyand who have been previously submitted to a job.

FIG. 12F illustrates an exemplary screen image for allowing thedifferent methods of posting the resume to resume management andrecruitment workflow system 140. As previously discussed, the optionsavailable to job candidates are to upload, e-mail, cut and paste, or usethe resume maker. From there, resume management and recruitment workflowsystem 140 parses the resume and the process continues through theresume processing flow internally.

FIG. 12G illustrates an exemplary screen image for parsing the resumeand creating its attributes. The system displays the extrapolatedinformation in the top left-hand corner. The extrapolated informationincludes name, address, e-mail, etc. Then, resume management andrecruitment workflow system 140 extrapolates the candidate's workexperience and skill or experience-related phrases and displays theresult in the work experience field.

FIG. 12H illustrates an exemplary screen image after entering theresume, parsing the resume, and matching the resume to all open jobsthat match the skill or experience-related phrases. Subsequently, resumemanagement and recruitment workflow system 140 notifies the recruiterand the candidate names appear in the view matched candidates screen forthat job.

FIG. 12I illustrates an exemplary screen image for initiating a searchfor candidates from the resume database 302. FIG. 12J illustrates anexemplary screen image showing the capability to perform a search withina search by excluding specific candidates to narrow down the resultsmore specifically. FIG. 12K illustrates an exemplary screen image forallowing recruiters to add skill or experience-related phrases and theiralternatives in addition to length of experience required. From thescreen, two methods of entry are available for the user, an intuitivelayout (the top sections of entered skill or experience-related phrasesin FIG. 12K) and a Boolean expression (the bottom box with the text andparentheses in FIG. 12K). Regardless of the method chosen, resumemanagement and recruitment workflow system 140 automatically convertsthe data entered to the other method in the appropriate field.

FIG. 12L illustrates an exemplary screen image for displaying theresults of the search incrementally. When clicking on the “Next” buttonand the “>>” to the right of the “Next” button, additional results aredisplayed until the search has been exhausted.

FIG. 12M illustrates an exemplary split screen image. The split screenallows a recruiter to view the multiple resumes of a candidate, thecandidate's attributes, any notes written by any recruiter on therecruiter's team, candidate activity by members of the team, in additionto the search results including shaded candidates that have been viewedby the recruiter.

In another embodiment, resume management and recruitment workflow system140 offers electronic mail capability from the site. A user can sendindividual e-mail messages using the e-mail address hyperlink from thecandidate information screen. In addition, the user can send multiplee-mail messages within a very short time period. In another embodiment,resume management and recruitment workflow system 140 includes tool tipsin the user interface. In another embodiment, resume management andrecruitment workflow system 140 consolidates events into a calendar aswell as a reporting form for the user to view different activities. Inanother embodiment, resume management and recruitment workflow system140 provides the ability to find a candidate using the candidate's name,electronic mail address, postal address, phone number, and the like. Inanother embodiment, as the user views the candidate or the job, thesystem shades the list of candidates and jobs that result from a searchand have been viewed. Thus, the screen display will indicate thosecandidates or jobs reviewed by the user. In another embodiment, resumemanagement and recruitment workflow system 140 allows the user to openand print a resume from the candidate screen and re-format it or save itwherever the user wants. In another embodiment, resume management andrecruitment workflow system 140 discerns that multiple resumes sharingthe same electronic mail address belong to the same candidateattributes. Resume management and recruitment workflow system 140resolves the latest most relevant data and presents that latestattributes to the user. In another embodiment, resume management andrecruitment workflow system 140 allows the user to use the full resumeas a search platform by selecting zero years or specifying no years forthe phrases in the search criteria. In another embodiment, resumemanagement and recruitment workflow system 140 utilizes a state, areacode, education, and desired salary filtering for a search forcandidates.

In another embodiment, resume management and recruitment workflow system140 provides access to resume database 302 in a non-traditionalemployer-employee relationship. Exemplary non-traditionalemployer-employee relationships include internal placement of currentemployees to new tasks or projects, and coordination of the placement ofcurrent employees among the organizations that make-up a distributednetwork of organizations such as branches of the Federal government.

Although the disclosed embodiments describe a fully functioning resumemanagement and recruitment workflow system and method, it is to beunderstood that other equivalent embodiments exist. Since numerousmodifications and variations will occur to those who review thisdisclosure, the resume management and recruitment workflow system andmethod is not limited to the exact construction and operationillustrated and disclosed. Accordingly, this disclosure intends allsuitable modifications and equivalents to fall within the scope of theclaims.

1. A system for using a computer to improve a precision ratio whensearching a resume database, comprising: a memory device resident in thecomputer; and a processor disposed in communication with the memorydevice, the processor configured to: receive a resume; parse the resumeto: locate at least one skill or experience-related phrase in theresume; determine an experience range for each said at least one skillor experience-related phrase by examining a use of each said at leastone skill or experience-related phrase in the resume; and compute a termof experience for each said at least one skill or experience-relatedphrase based on the experience range, wherein the term of experience foreach said at least one skill or experience-related phrase is a summationof the term of experience for each occurrence of the phrase associatedwith a different experience range; store the resume in the resumedatabase; create a parsed resume based on the resume, the parsed resumeincluding each said at least one skill or experience-related phraselocated in the resume, the term of experience computed for each said atleast one skill or experience-related phrase, and a relationship betweenthe term of experience and each said at least one skill orexperience-related phrase; store the parsed resume in the resumedatabase; send a database query to the resume database, the databasequery including a job description that includes at least one jobrequirement, each said at least one job requirement including a requiredskill or experience-related phrase, and a required term of experience;and receive a result set in response to the database query, wherein theresult set includes the resume when the parsed resume satisfies the jobdescription.
 2. The system of claim 1, wherein the resume comprises adocument in an electronic format.
 3. The system of claim 2, wherein theelectronic format includes a standard digital document format.
 4. Thesystem of claim 1, wherein the resume comprises a curriculum vitae. 5.The system of claim 1, wherein the processor receives the resume from acandidate.
 6. The system of claim 5, wherein the candidate creates theresume.
 7. The system of claim 1, wherein the received resume is one ofa number of resumes.
 8. The system of claim 7, wherein the receipt ofthe number of resumes is automatic, scheduled, or periodic.
 9. Thesystem of claim 1, wherein the resume includes at least one word, andwherein said at least one skill or experience-related phrase comprisessaid at least one word.
 10. The system of claim 9, wherein, when theresume includes at least two words, said at least one skill orexperience-related phrase further comprises at least one word group,each said at least one word group including consecutive words from theresume.
 11. The system of claim 1, wherein each said at least one skillor experience-related phrase comprises a skill, a job location, a title,a department, a responsibility, a duty, an action, an achievement, anaccomplishment, a relationship, a product, a consultation, a group, ateam, a field, a space, an area of endeavor, a company, an industry, atechnical package, or a tool.
 12. The system of claim 1, wherein tostore the resume, the processor is further configured to: store theresume as a public resume, wherein the resume database is accessible byat least one recruiter, and the public resume is accessible by everyrecruiter.
 13. The system of claim 1, wherein to store the resume, theprocessor is further configured to: store the resume as a privateresume, wherein the resume database is accessible by at least onerecruiter, and the private resume is accessible by only one recruiter ofsaid at least one recruiter.
 14. The system of claim 1, wherein to storethe resume, the processor is further configured to: store the resume asa private resume, wherein the resume database is accessible by at leastone recruitment team, each said at least one recruitment team includingat least one recruitment team member, and the private resume isaccessible by only one recruitment team of said at least one recruitmentteam.
 15. The system of claim 1, wherein said at least one skill orexperience-related phrase includes at least one attribute for acandidate.
 16. The system of claim 15, wherein said at least oneattribute includes a name, a residence or business address, a telephonenumber, an electronic mail address, education data, past employer data,or salary data.
 17. The system of claim 16, wherein the telephone numberincludes a home number, a work number, a facsimile number, or a cellularnumber.
 18. The system of claim 16, wherein the education data includesa degree, a major, a year, or a school name.
 19. The system of claim 16,wherein the past employer data includes an employer name, a last title,and a period of employment.
 20. The system of claim 16, wherein thesalary data includes a current salary and an expected salary.
 21. Thesystem of claim 1, wherein the examining of the use of each said atleast one skill or experience-related phrase in the resume includesexamining a portion of the resume that surrounds each said at least oneskill or experience-related phrase for a context.
 22. The system ofclaim 21, wherein the processor is further configured to: when theexperience range is zero: set the term of experience to zero; and whenthe experience range is greater than zero: determine a start time forthe experience range; determine an end time for the experience range;compute a time difference between the start time and the end time; andset the term of experience to the time difference, wherein the term ofexperience is rounded down to a unit of time.
 23. The system of claim22, wherein the unit of time is a number of seconds, minutes, hours,days, weeks, months, years, or decades.
 24. The system of claim 22,wherein the unit of time is an integer.
 25. The system of claim 22,wherein the unit of time is not an integer.
 26. The system of claim 22,wherein to set the term of experience to the time difference, theprocessor is further configured to: compute a repeated entry timedifference for each said at least one skill or experience-related phrasethat is a repeated entry and is associated with an other experiencerange; and add to the time difference each repeated entry timedifference, wherein the other experience range includes an other starttime and an other end time, and wherein the other start time and thestart time are different, or the other end time and the end time aredifferent.
 27. The system of claim 26, wherein to store the parsedresume, the processor is further configured to: store each said at leastone skill or experience-related phrase having an identical term ofexperience as an element defined by a markup language, the elementcomprising a start tag, content data, and an end tag, wherein the starttag and the end tag include the identical term of experience, andwherein the content data includes each said at least one skill orexperience-related phrase having the identical term of experience. 28.The system of claim 27, wherein the content data further includes anested element comprising a nested start tag, nested content data, and anested end tag, wherein the nested start tag and the nested end taginclude a nested term of experience, and wherein the nested content dataincludes each said at least one skill or experience-related phrasehaving the nested term of experience.
 29. The system of claim 28,wherein the nested term of experience is greater than the identical termof experience.
 30. The system of claim 27, wherein the storing of theelement is to a file.
 31. The system of claim 30, wherein the filecomprises an XML file.
 32. The system of claim 1, wherein the processoris further configured to: send a portion of the parsed resume to acandidate.
 33. The system of claim 32, wherein the portion of the parsedresume is sent in a message to the candidate.
 34. The system of claim33, wherein the message includes an electronic mail message.
 35. Thesystem of claim 33, wherein the portion of the parsed resume is anattachment to an electronic mail message.
 36. The system of claim 32,wherein a reference to the portion of the parsed resume is sent in amessage to the candidate.
 37. The system of claim 32, wherein theprocessor is further configured to: receive a modified copy of theportion of the parsed resume.
 38. The system of claim 37, wherein theprocessor is further configured to: create a replacement resume based onthe modified copy of the portion of the parsed resume.
 39. The system ofclaim 1, wherein the resume comprises a replacement resume.
 40. Thesystem of claim 1, wherein the processor is further configured to:receive the job description; store the job description in the resumedatabase; and send a portion of the result set to a recruiter, whereinthe result set includes at least one matching resume from the resumedatabase, each said at least one matching resume satisfying the jobdescription.
 41. The system of claim 40, wherein the required term ofexperience is rounded up to a unit of time.
 42. The system of claim 41,wherein the unit of time is a number of seconds, minutes, hours, days,weeks, months, years, or decades.
 43. The system of claim 41, whereinthe unit of time is an integer.
 44. The system of claim 41, wherein theunit of time is not an integer.
 45. The system of claim 41, wherein eachsaid at least one matching resume satisfies the job description when theparsed resume includes the required skill or experience-related phrasefor each said at least one job requirement, and the term of experiencefor the required skill or experience-related phrase in the parsed resumeis greater than or equal to the required term of experience.
 46. Thesystem of claim 45, wherein at least one of said at least one jobrequirement includes at least one alternative job requirement, each saidat least one alternative job requirement comprising an alternativerequired skill or experience-related phrase and an alternative requiredterm of experience, and wherein each said at least one matching resumesatisfies said at least one of said at least one job requirement whenthe parsed resume includes either: the required skill orexperience-related phrase for said at least one of said at least one jobrequirement, and the term of experience for the required skill orexperience-related phrase in the parsed resume is greater than or equalto the required term of experience; or the alternative required skill orexperience-related phrase for any said at least one alternative jobrequirement, and the term of experience for the alternative requiredskill or experience-related phrase in the parsed resume is greater thanor equal to the alternative required term of experience.
 47. The systemof claim 41, wherein each said at least one matching resume satisfiesthe job description when the parsed resume includes the required skillor experience-related phrase for any said at least one job requirement,and the term of experience for the required skill or experience-relatedphrase in the parsed resume is greater than or equal to the requiredterm of experience.
 48. The system of claim 40, wherein the processorreceives the job description from a recruiter.
 49. The system of claim48, wherein the recruiter creates the job description.
 50. The system ofclaim 40, wherein the job description is a clone of an existing jobdescription stored in the resume database.
 51. The system of claim 40,wherein the received job description is one of a number of jobdescriptions.
 52. The system of claim 51, wherein the receipt of thenumber of job descriptions is automatic, scheduled, or periodic.
 53. Thesystem of claim 40, wherein a reference to the portion of the result setis sent.
 54. The system of claim 40, wherein the processor is furtherconfigured to: identify as a selected resume one of said at least onematching resume; and display the selected resume on a display screenhaving a left side and a right side, the left side showing a parsedrepresentation of the selected resume, and the right side showing amarked-up representation of the selected resume.
 55. The system of claim54, wherein the marked-up representation includes at least oneoccurrence of the required skill or experience-related phrase for eachsaid at least one job requirement, and wherein to display the selectedresume, the processor is further configured to: mark each said at leastone occurrence of the required skill or experience-related phrase foreach said at least one job requirement.
 56. The system of claim 55,wherein the marking includes highlighting each said at least oneoccurrence of the required skill or experience-related phrase for eachsaid at least one job requirement, or displaying in reverse video eachsaid at least one occurrence of the required skill or experience-relatedphrase for each said at least one job requirement.
 57. The system ofclaim 1, wherein the job description further includes a required levelof education or a required field of specialization, and wherein theprocessor is further configured to: store the job description in theresume database; and send a portion of the result set, wherein theresult set includes at least one matching resume from the resumedatabase, each said at least one matching resume satisfying the jobdescription.
 58. The system of claim 57, wherein each said at least onematching resume satisfies the job description when the parsed resumeincludes the required level of education, the required field ofspecialization, or a phrase implying the required level of education orthe required field of specialization.
 59. The system of claim 1, whereinthe job description further includes a required salary range comprisinga minimum required salary and a maximum required salary, and wherein theprocessor is further configured to: store the job description; and senda portion of the result set, wherein the result set includes at leastone matching resume from the resume database, each said at least onematching resume satisfying the job description.
 60. The system of claim59, wherein each said at least one matching resume satisfies the jobdescription when the parsed resume includes an expected salary thatfalls within the required salary range.
 61. The system of claim 60,wherein the expected salary falls within the required salary range when:the expected salary is greater than or equal to the minimum requiredsalary, and the expected salary is less than or equal to the maximumrequired salary.
 62. The system of claim 61, wherein the parsed resumeincludes at least one salary range set to represent the expected salary,each said at least one salary range set including a salary range unit,and a multiplier, and wherein a multiplication of the salary range unitand the multiplier yields a result that is the greatest integer that isless than or equal to the expected salary.
 63. The system of claim 1,wherein the processor is further configured to: extract education datafrom the resume; and store the education data in the parsed resume. 64.The system of claim 63, wherein to store the education data, theprocessor is further configured to: store the education data in anelement defined by a markup language, the element comprising a starttag, content data, and an end tag, wherein the content data includes theeducation data.
 65. The system of claim 64, wherein the storing of theelement is to a file.
 66. The system of claim 65, wherein the filecomprises an XML file.
 67. The system of claim 64, wherein the educationdata includes at least one education summary, and wherein to store theeducation data, the processor is further configured to: store each saidat least one education summary in an education summary element definedby a markup language, the education summary element comprising aneducation summary start tag, education summary content data, and aneducation summary end tag, wherein the education summary content dataincludes each said at least one education summary.
 68. The system ofclaim 67, wherein each said at least one education summary includes adegree, a field of specialization, a school name, and a graduation year,and wherein to store the education data, the processor is furtherconfigured to: store the education summary content data in an educationelement defined by a markup language, the education element comprisingan education start tag, education content data, and an education endtag, wherein the education start tag and the education end tag includean indication of the degree, and wherein the education content dataincludes each said at least one education summary.
 69. The system ofclaim 68, wherein the education content data further includes a nestededucation element comprising a nested education start tag, nestededucation content data, and a nested education end tag, wherein thenested education start tag and the nested education end tag include anindication of a prerequisite degree implied by the degree, and whereinthe nested education content data includes each said at least oneeducation summary.
 70. The system of claim 64, wherein to store theeducation data, the processor is further configured to: store degreedata in a degree element defined by a markup language, the degreeelement comprising an degree start tag, degree content data, and adegree end tag, wherein the education data includes at least oneeducation summary, each said at least one education summary including adegree and at least one prerequisite degree implied by the degree, andwherein the degree content data includes, for each said at least oneeducation summary, the degree and each said at least one prerequisitedegree.
 71. The system of claim 1, wherein the processor is furtherconfigured to: obtain an expected salary for a candidate; convert theexpected salary to at least one multiplier; and store each said at leastone multiplier in the parsed resume, wherein each said at least onemultiplier is associated with a salary range unit, and wherein each saidat least one multiplier is the greatest integer that is less than orequal to a result of a division of the expected salary by the salaryrange unit.
 72. The system of claim 71, wherein the resume furthercomprises the expected salary.
 73. The system of claim 71, wherein tostore each said at least one multiplier, the processor is furtherconfigured to: store each said at least one multiplier as an elementdefined by a markup language, the element comprising a start tag,content data, and an end tag, wherein the start tag and the end taginclude an indication of the salary range unit associated with each saidat least one multiplier, and wherein the content data includes each saidat least one multiplier.
 74. The system of claim 73, wherein the storingof the element is to a file.
 75. The system of claim 74, wherein thefile comprises an XML file.
 76. A method for using a computer to improvea precision ratio when searching a resume database, comprising:receiving a resume in a memory device resident in the computer; parsingthe resume to: locate at least one skill or experience-related phrase inthe resume; determine an experience range for each said at least oneskill or experience-related phrase by examining a use of each said atleast one skill or experience-related phrase in the resume; and compute,by the computer, a term of experience for each said at least one skillor experience-related phrase based on the experience range, wherein theterm of experience for each said at least one skill orexperience-related phrase is a summation of the term of experience foreach occurrence of the phrase associated with a different experiencerange; storing the resume in the resume database; creating a parsedresume based on the resume, the parsed resume including each said atleast one skill or experience-related phrase located in the resume, theterm of experience computed for each said at least one skill orexperience-related phrase, and a relationship between the term ofexperience and each said at least one skill or experience-relatedphrase; storing the parsed resume in the resume database; sending adatabase query to the resume database, the database query including ajob description that includes at least one job requirement, each said atleast one job requirement including a required skill orexperience-related phrase, and a required term of experience; andreceiving a result set in response to the database query, wherein theresult set includes the resume when the parsed resume satisfies the jobdescription.
 77. The method of claim 76, wherein the resume comprises adocument in an electronic format.
 78. The method of claim 77, whereinthe electronic format includes a standard digital document format. 79.The method of claim 76, wherein the resume comprises a curriculum vitae.80. The method of claim 76, wherein the receiving of the resume is froma candidate.
 81. The method of claim 80, wherein the candidate createsthe resume.
 82. The method of claim 76, wherein the received resume isone of a number of resumes.
 83. The method of claim 82, wherein thereceipt of the number of resumes is automatic, scheduled, or periodic.84. The method of claim 76, wherein the resume includes at least oneword, and wherein said at least one skill or experience-related phrasecomprises said at least one word.
 85. The method of claim 84, wherein,when the resume includes at least two words, said at least one skill orexperience-related phrase further comprises at least one word group,each said at least one word group including consecutive words from theresume.
 86. The method of claim 76, wherein each said at least one skillor experience-related phrase comprises a skill, a job location, a title,a department, a responsibility, a duty, an action, an achievement, anaccomplishment, a relationship, a product, a consultation, a group, ateam, a field, a space, an area of endeavor, a company, an industry, atechnical package, or a tool.
 87. The method of claim 76, wherein thestoring of the resume further comprises: storing the resume as a publicresume, wherein the resume database is accessible by at least onerecruiter, and the public resume is accessible by every recruiter. 88.The method of claim 76, wherein the storing of the resume furthercomprises: storing the resume as a private resume, wherein the resumedatabase is accessible by at least one recruiter, and the private resumeis accessible by only one recruiter of said at least one recruiter. 89.The method of claim 76, wherein the storing of the resume furthercomprises: storing the resume as a private resume, wherein the resumedatabase is accessible by at least one recruitment team, each said atleast one recruitment team including at least one recruitment teammember, and the private resume is accessible by only one recruitmentteam of said at least one recruitment team.
 90. The method of claim 76,wherein said at least one skill or experience-related phrase includes atleast one attribute for a candidate.
 91. The method of claim 90, whereinsaid at least one attribute includes a name, a residence or businessaddress, a telephone number, an electronic mail address, education data,past employer data, or salary data.
 92. The method of claim 91, whereinthe telephone number includes a home number, a work number, a facsimilenumber, or a cellular number.
 93. The method of claim 91, wherein theeducation data includes a degree, a major, a year, or a school name. 94.The method of claim 91, wherein the past employer data includes anemployer name, a last title, and a period of employment.
 95. The methodof claim 91, wherein the salary data includes a current salary and anexpected salary.
 96. The method of claim 76, wherein the examining ofthe use of each said at least one skill or experience-related phrase inthe resume includes examining a portion of the resume that surroundseach said at least one skill or experience-related phrase for a context.97. The method of claim 96, further comprising: when the experiencerange is zero: setting the term of experience to zero; and when theexperience range is greater than zero: determining a start time for theexperience range; determining an end time for the experience range;computing a time difference between the start time and the end time; andsetting the term of experience to the time difference, wherein the termof experience is rounded down to a unit of time.
 98. The method of claim97, wherein the unit of time is a number of seconds, minutes, hours,days, weeks, months, years, or decades.
 99. The method of claim 97,wherein the unit of time is an integer.
 100. The method of claim 97,wherein the unit of time is not an integer.
 101. The method of claim 97,wherein the setting of the term of experience to the time differencefurther comprises: computing a repeated entry time difference for eachsaid at least one skill or experience-related phrase that is a repeatedentry and is associated with an other experience range; and adding tothe time difference each repeated entry time difference, wherein theother experience range includes an other start time and an other endtime, and wherein the other start time and the start time are different,or the other end time and the end time are different.
 102. The method ofclaim 101, wherein the storing of the parsed resume further comprises:storing each said at least one skill or experience-related phrase havingan identical term of experience as an element defined by a markuplanguage, the element comprising a start tag, content data, and an endtag, wherein the start tag and the end tag include the identical term ofexperience, and wherein the content data includes each said at least oneskill or experience-related phrase having the identical term ofexperience.
 103. The method of claim 102, wherein the content datafurther includes a nested element comprising a nested start tag, nestedcontent data, and a nested end tag, wherein the nested start tag and thenested end tag include a nested term of experience, and wherein thenested content data includes each said at least one skill orexperience-related phrase having the nested term of experience.
 104. Themethod of claim 103, wherein the nested term of experience is greaterthan the identical term of experience.
 105. The method of claim 102,wherein the storing of the element is to a file.
 106. The method ofclaim 105, wherein the file comprises an XML file.
 107. The method ofclaim 76, further comprising: sending a portion of the parsed resume toa candidate.
 108. The method of claim 107, wherein the portion of theparsed resume is sent in a message to the candidate.
 109. The method ofclaim 108, wherein the message includes an electronic mail message. 110.The method of claim 108, wherein the portion of the parsed resume is anattachment to an electronic mail message.
 111. The method of claim 107,wherein a reference to the portion of the parsed resume is sent in amessage to the candidate.
 112. The method of claim 107, furthercomprising: receiving a modified copy of the portion of the parsedresume.
 113. The method of claim 112, further comprising: creating areplacement resume based on the modified copy of the portion of theparsed resume.
 114. The method of claim 76, wherein the resume comprisesa replacement resume.
 115. The method of claim 76, further comprising:receiving the job description; storing the job description in the resumedatabase; and sending a portion of the result set to a recruiter,wherein the result set includes at least one matching resume from theresume database, each said at least one matching resume satisfying thejob description.
 116. The method of claim 115, wherein the required termof experience is rounded up to a unit of time.
 117. The method of claim116, wherein the unit of time is a number of seconds, minutes, hours,days, weeks, months, years, or decades.
 118. The method of claim 116,wherein the unit of time is an integer.
 119. The method of claim 116,wherein the unit of time is not an integer.
 120. The method of claim116, wherein each said at least one matching resume satisfies the jobdescription when the parsed resume includes the required skill orexperience-related phrase for each said at least one job requirement,and the term of experience for the required skill or experience-relatedphrase in the parsed resume is greater than or equal to the requiredterm of experience.
 121. The method of claim 120, wherein at least oneof said at least one job requirement includes at least one alternativejob requirement, each said at least one alternative job requirementcomprising an alternative required skill or experience-related phraseand an alternative required term of experience, and wherein each said atleast one matching resume satisfies said at least one of said at leastone job requirement when the parsed resume includes either: the requiredskill or experience-related phrase for said at least one of said atleast one job requirement, and the term of experience for the requiredskill or experience-related phrase in the parsed resume is greater thanor equal to the required term of experience; or the alternative requiredskill or experience-related phrase for any said at least one alternativejob requirement, and the term of experience for the alternative requiredskill or experience-related phrase in the parsed resume is greater thanor equal to the alternative required term of experience.
 122. The methodof claim 116, wherein each said at least one matching resume satisfiesthe job description when the parsed resume includes the required skillor experience-related phrase for any said at least one job requirement,and the term of experience for the required skill or experience-relatedphrase in the parsed resume is greater than or equal to the requiredterm of experience.
 123. The method of claim 115, wherein the receivingof the job description is from a recruiter.
 124. The method of claim123, wherein the recruiter creates the job description.
 125. The methodof claim 115, wherein the job description is a clone of an existing jobdescription stored in the resume database.
 126. The method of claim 115,wherein the received job description is one of a number of jobdescriptions.
 127. The method of claim 126, wherein the receipt of thenumber of job descriptions is automatic, scheduled, or periodic. 128.The method of claim 115, wherein a reference to the portion of theresult set is sent.
 129. The method of claim 115, further comprising:identifying as a selected resume one of said at least one matchingresume; and displaying the selected resume on a display screen having aleft side and a right side, the left side showing a parsedrepresentation of the selected resume, and the right side showing amarked-up representation of the selected resume.
 130. The method ofclaim 129, wherein the marked-up representation includes at least oneoccurrence of the required skill or experience-related phrase for eachsaid at least one job requirement, and wherein the displaying of theselected resume further comprises: marking each said at least oneoccurrence of the required skill or experience-related phrase for eachsaid at least one job requirement.
 131. The method of claim 130, whereinthe marking includes highlighting each said at least one occurrence ofthe required skill or experience-related phrase for each said at leastone job requirement, or displaying in reverse video each said at leastone occurrence of the required skill or experience-related phrase foreach said at least one job requirement.
 132. The method of claim 76,wherein the job description further includes a required level ofeducation or a required field of specialization, the method furthercomprising: storing the job description in the resume database; andsending a portion of the result set, wherein the result set includes atleast one matching resume from the resume database, each said at leastone matching resume satisfying the job description.
 133. The method ofclaim 132, wherein each said at least one matching resume satisfies thejob description when the parsed resume includes the required level ofeducation, the required field of specialization, or a phrase implyingthe required level of education or the required field of specialization.134. The method of claim 76, wherein the job description furtherincludes a required salary range comprising a minimum required salaryand a maximum required salary, the method further comprising: storingthe job description; and sending a portion of the result set, whereinthe result set includes at least one matching resume from the resumedatabase, each said at least one matching resume satisfying the jobdescription.
 135. The method of claim 134, wherein each said at leastone matching resume satisfies the job description when the parsed resumeincludes an expected salary that falls within the required salary range.136. The method of claim 135, wherein the expected salary falls withinthe required salary range when: the expected salary is greater than orequal to the minimum required salary, and the expected salary is lessthan or equal to the maximum required salary.
 137. The method of claim136, wherein the parsed resume includes at least one salary range set torepresent the expected salary, each said at least one salary range setincluding a salary range unit, and a multiplier, and wherein amultiplication of the salary range unit and the multiplier yields aresult that is the greatest integer that is less than or equal to theexpected salary.
 138. The method of claim 76, further comprising:extracting education data from the resume; and storing the educationdata in the parsed resume.
 139. The method of claim 138, wherein thestoring of the education data further comprises: storing the educationdata in an element defined by a markup language, the element comprisinga start tag, content data, and an end tag, wherein the content dataincludes the education data.
 140. The method of claim 139, wherein thestoring of the element is to a file.
 141. The method of claim 140,wherein the file comprises an XML file.
 142. The method of claim 139,wherein the education data includes at least one education summary, andwherein the storing of the education data further comprises: storingeach said at least one education summary in an education summary elementdefined by a markup language, the education summary element comprisingan education summary start tag, education summary content data, and aneducation summary end tag, wherein the education summary content dataincludes each said at least one education summary.
 143. The method ofclaim 142, wherein each said at least one education summary includes adegree, a field of specialization, a school name, and a graduation year,and wherein the storing of the education data further comprises: storingthe education summary content data in an education element defined by amarkup language, the education element comprising an education starttag, education content data, and an education end tag, wherein theeducation start tag and the education end tag include an indication ofthe degree, and wherein the education content data includes each said atleast one education summary.
 144. The method of claim 143, wherein theeducation content data further includes a nested education elementcomprising a nested education start tag, nested education content data,and a nested education end tag, wherein the nested education start tagand the nested education end tag include an indication of a prerequisitedegree implied by the degree, and wherein the nested education contentdata includes each said at least one education summary.
 145. The methodof claim 139, wherein the storing of the education data furthercomprises: storing degree data in a degree element defined by a markuplanguage, the degree element comprising an degree start tag, degreecontent data, and a degree end tag, wherein the education data includesat least one education summary, each said at least one education summaryincluding a degree and at least one prerequisite degree implied by thedegree, and wherein the degree content data includes, for each said atleast one education summary, the degree and each said at least oneprerequisite degree.
 146. The method of claim 76, further comprising:obtaining an expected salary for a candidate; converting the expectedsalary to at least one multiplier; and storing each said at least onemultiplier in the parsed resume, wherein each said at least onemultiplier is associated with a salary range unit, and wherein each saidat least one multiplier is the greatest integer that is less than orequal to a result of a division of the expected salary by the salaryrange unit.
 147. The method of claim 146, wherein the resume furthercomprises the expected salary.
 148. The method of claim 146, wherein thestoring of each said at least one multiplier further comprises: storingeach said at least one multiplier as an element defined by a markuplanguage, the element comprising a start tag, content data, and an endtag, wherein the start tag and the end tag include an indication of thesalary range unit associated with each said at least one multiplier, andwherein the content data includes each said at least one multiplier.149. The method of claim 148, wherein the storing of the element is to afile.
 150. The method of claim 149, wherein the file comprises an XMLfile.
 151. A computer program product, to be used on a computer, forimproving a precision ratio when searching a resume database,comprising: a computer readable medium storing: program code forreceiving a resume; program code for parsing the resume to: locate atleast one skill or experience-related phrase in the resume; determine anexperience range for each said at least one skill or experience-relatedphrase by examining a use of each said at least one skill orexperience-related phrase in the resume; and compute a term ofexperience for each said at least one skill or experience-related phrasebased on the experience range, wherein the term of experience for eachsaid at least one skill or experience-related phrase is a summation ofthe term of experience for each occurrence of the phrase associated witha different experience range; program code for storing the resume in theresume database; program code for creating a parsed resume based on theresume, the parsed resume including each said at least one skill orexperience-related phrase located in the resume, the term of experiencecomputed for each said at least one skill or experience-related phrase,and a relationship between the term of experience and each said at leastone skill or experience-related phrase; program code for storing aparsed resume in the resume database; program code for sending adatabase query to the resume database, the database query including ajob description that includes at least one job requirement, each said atleast one job requirement including a required skill orexperience-related phrase, and a required term of experience; andprogram code for receiving a result set in response to the databasequery, wherein the result set includes the resume when the parsed resumesatisfies the job description.
 152. The computer program product ofclaim 151, wherein the received resume is one of a number of resumes.153. The computer program product of claim 152, wherein the receipt ofthe number of resumes is automatic, scheduled, or periodic.
 154. Thecomputer program product of claim 151, wherein the resume includes atleast one word, and wherein said at least one skill orexperience-related phrase comprises said at least one word.
 155. Thecomputer program product of claim 154, wherein, when the resume includesat least two words, said at least one skill or experience-related phrasefurther comprises at least one word group, each said at least one wordgroup including consecutive words from the resume.
 156. The computerprogram product of claim 151, wherein the program code for storing theresume further comprises: program code for storing the resume as apublic resume, wherein the resume database is accessible by at least onerecruiter, and the public resume is accessible by every recruiter. 157.The computer program product of claim 151, wherein the program code forstoring the resume further comprises: program code for storing theresume as a private resume, wherein the resume database is accessible byat least one recruiter, and the private resume is accessible by only onerecruiter of said at least one recruiter.
 158. The computer programproduct of claim 151, wherein the program code for storing the resumefurther comprises: program code for storing the resume as a privateresume, wherein the resume database is accessible by at least onerecruitment team, each said at least one recruitment team including atleast one recruitment team member, and the private resume is accessibleby only one recruitment team of said at least one recruitment team. 159.The computer program product of claim 151, wherein said at least oneskill or experience-related phrase includes at least one attribute for acandidate.
 160. The computer program product of claim 151, wherein theexamining of the use of each said at least one skill orexperience-related phrase in the resume includes examining a portion ofthe resume that surrounds each said at least one skill orexperience-related phrase for a context.
 161. The computer programproduct of claim 160, the computer readable medium further storing:program code for setting the term of experience to zero when theexperience range is zero; program code for determining a start time forthe experience range when the experience range is greater than zero;program code for determining an end time for the experience range whenthe experience range is greater than zero; program code for computing atime difference between the start time and the end time when theexperience range is greater than zero; and program code for setting theterm of experience to the time difference when the experience range isgreater than zero, wherein the term of experience is rounded down to aunit of time.
 162. The computer program product of claim 161, whereinthe program code for setting the term of experience to the timedifference further comprises: program code for computing a repeatedentry time difference for each said at least one skill orexperience-related phrase that is a repeated entry and is associatedwith an other experience range; and program code for adding to the timedifference each repeated entry time difference, wherein the otherexperience range includes an other start time and an other end time, andwherein the other start time and the start time are different, or theother end time and the end time are different.
 163. The computer programproduct of claim 162, wherein the program code for storing the parsedresume further comprises: program code for storing each said at leastone skill or experience-related phrase having an identical term ofexperience as an element defined by a markup language, the elementcomprising a start tag, content data, and an end tag, wherein the starttag and the end tag include the identical term of experience, andwherein the content data includes each said at least one skill orexperience-related phrase having the identical term of experience. 164.The computer program product of claim 163, wherein the content datafurther includes a nested element comprising a nested start tag, nestedcontent data, and a nested end tag, wherein the nested start tag and thenested end tag include a nested term of experience, and wherein thenested content data includes each said at least one skill orexperience-related phrase having the nested term of experience.
 165. Thecomputer program product of claim 164, wherein the nested term ofexperience is greater than the identical term of experience.
 166. Thecomputer program product of claim 163, wherein the storing of theelement is to a file.
 167. The computer program product of claim 166,wherein the file comprises an XML file.
 168. The computer programproduct of claim 151, further comprising: program code for sending aportion of the parsed resume to a candidate.
 169. The computer programproduct of claim 168, wherein a reference to the portion of the parsedresume is sent in a message to the candidate.
 170. The computer programproduct of claim 168, the computer readable medium further storing:program code for receiving a modified copy of the portion of the parsedresume.
 171. The computer program product of claim 170, the computerreadable medium further storing: program code for creating a replacementresume based on the modified copy of the portion of the parsed resume.172. The computer program product of claim 151, the computer readablemedium further storing: program code for receiving the job description;program code for storing the job description in the resume database; andprogram code for sending a portion of the result set to a recruiter,wherein the result set includes at least one matching resume from theresume database, each said at least one matching resume satisfying thejob description.
 173. The computer program product of claim 172, whereinthe required term of experience is rounded up to a unit of time. 174.The computer program product of claim 173, wherein each said at leastone matching resume satisfies the job description when the parsed resumeincludes the required skill or experience-related phrase for each saidat least one job requirement, and the term of experience for therequired skill or experience-related phrase in the parsed resume isgreater than or equal to the required term of experience.
 175. Thecomputer program product of claim 174, wherein at least one of said atleast one job requirement includes at least one alternative jobrequirement, each said at least one alternative job requirementcomprising an alternative required skill or experience-related phraseand an alternative required term of experience, and wherein each said atleast one matching resume satisfies said at least one of said at leastone job requirement when the parsed resume includes either: the requiredskill or experience-related phrase for said at least one of said atleast one job requirement, and the term of experience for the requiredskill or experience-related phrase in the parsed resume is greater thanor equal to the required term of experience; or the alternative requiredskill or experience-related phrase for any said at least one alternativejob requirement, and the term of experience for the alternative requiredskill or experience-related phrase in the parsed resume is greater thanor equal to the alternative required term of experience.
 176. Thecomputer program product of claim 173, wherein each said at least onematching resume satisfies the job description when the parsed resumeincludes the required skill or experience-related phrase for any said atleast one job requirement, and the term of experience for the requiredskill or experience-related phrase in the parsed resume is greater thanor equal to the required term of experience.
 177. The computer programproduct of claim 172, wherein the job description is a clone of anexisting job description stored in the resume database.
 178. Thecomputer program product of claim 172, wherein the received jobdescription is one of a number of job descriptions.
 179. The computerprogram product of claim 178, wherein the receipt of the number of jobdescriptions is automatic, scheduled, or periodic.
 180. The computerprogram product of claim 172, wherein a reference to the portion of theresult set is sent.
 181. The computer program product of claim 172, thecomputer readable medium further storing: program code for identifyingas a selected resume one of said at least one matching resume; andprogram code for displaying the selected resume on a display screenhaving a left side and a right side, the left side showing a parsedrepresentation of the selected resume, and the right side showing amarked-up representation of the selected resume.
 182. The computerprogram product of claim 181, wherein the marked-up representationincludes at least one occurrence of the required skill orexperience-related phrase for each said at least one job requirement,and wherein the program code for displaying the selected resume furthercomprises: program code for marking each said at least one occurrence ofthe required skill or experience-related phrase for each said at leastone job requirement.
 183. The computer program product of claim 182,wherein the marking includes highlighting each said at least oneoccurrence of the required skill or experience-related phrase for eachsaid at least one job requirement, or displaying in reverse video eachsaid at least one occurrence of the required skill or experience-relatedphrase for each said at least one job requirement.
 184. The computerprogram product of claim 151, wherein the job description furtherincludes a required level of education or a required field ofspecialization, the computer readable medium further storing: programcode for storing the job description in the resume database; and programcode for sending a portion of the result set, wherein the result setincludes at least one matching resume from the resume database, eachsaid at least one matching resume satisfying the job description. 185.The computer program product of claim 184, wherein each said at leastone matching resume satisfies the job description when the parsed resumeincludes the required level of education, the required field ofspecialization, or a phrase implying the required level of education orthe required field of specialization.
 186. The computer program productof claim 151, wherein the job description further includes a requiredsalary range comprising a minimum required salary and a maximum requiredsalary, the computer readable medium further storing: program code forstoring the job description; and program code for sending a portion ofthe result set, wherein the result set includes at least one matchingresume from the resume database, each said at least one matching resumesatisfying the job description.
 187. The computer program product ofclaim 186, wherein each said at least one matching resume satisfies thejob description when the parsed resume includes an expected salary thatfalls within the required salary range.
 188. The computer programproduct of claim 187, wherein the expected salary falls within therequired salary range when: the expected salary is greater than or equalto the minimum required salary, and the expected salary is less than orequal to the maximum required salary.
 189. The computer program productof claim 188, wherein the parsed resume includes at least one salaryrange set to represent the expected salary, each said at least onesalary range set including a salary range unit, and a multiplier, andwherein a multiplication of the salary range unit and the multiplieryields a result that is the greatest integer that is less than or equalto the expected salary.
 190. The computer program product of claim 151,the computer readable medium further storing: program code forextracting education data from the resume; and program code for storingthe education data in the parsed resume.
 191. The computer programproduct of claim 190, wherein the program code for storing the educationdata further comprises: program code for storing the education data inan element defined by a markup language, the element comprising a starttag, content data, and an end tag, wherein the content data includes theeducation data.
 192. The computer program product of claim 191, whereinthe storing of the element is to a file.
 193. The computer programproduct of claim 192, wherein the file comprises an XML file.
 194. Thecomputer program product of claim 191, wherein the education dataincludes at least one education summary, and wherein the program codefor storing the education data further comprises: program code forstoring each said at least one education summary in an education summaryelement defined by a markup language, the education summary elementcomprising an education summary start tag, education summary contentdata, and an education summary end tag, wherein the education summarycontent data includes each said at least one education summary.
 195. Thecomputer program product of claim 194, wherein each said at least oneeducation summary includes a degree, a field of specialization, a schoolname, and a graduation year, and wherein the program code for storingthe education data further comprises: program code for storing theeducation summary content data in an education element defined by amarkup language, the education element comprising an education starttag, education content data, and an education end tag, wherein theeducation start tag and the education end tag include an indication ofthe degree, and wherein the education content data includes each said atleast one education summary.
 196. The computer program product of claim195, wherein the education content data further includes a nestededucation element comprising a nested education start tag, nestededucation content data, and a nested education end tag, wherein thenested education start tag and the nested education end tag include anindication of a prerequisite degree implied by the degree, and whereinthe nested education content data includes each said at least oneeducation summary.
 197. The computer program product of claim 191,wherein the program code for storing the education data furthercomprises: program code for storing degree data in a degree elementdefined by a markup language, the degree element comprising an degreestart tag, degree content data, and a degree end tag, wherein theeducation data includes at least one education summary, each said atleast one education summary including a degree and at least oneprerequisite degree implied by the degree, and wherein the degreecontent data includes, for each said at least one education summary, thedegree and each said at least one prerequisite degree.
 198. The computerprogram product of claim 151, the computer readable medium furtherstoring: program code for obtaining an expected salary for a candidate;program code for converting the expected salary to at least onemultiplier; and program code for storing each said at least onemultiplier in the parsed resume, wherein each said at least onemultiplier is associated with a salary range unit, and wherein each saidat least one multiplier is the greatest integer that is less than orequal to a result of a division of the expected salary by the salaryrange unit.
 199. The computer program product of claim 198, wherein theresume further comprises the expected salary.
 200. The computer programproduct of claim 198, wherein the program code for storing each said atleast one multiplier further comprises: program code for storing eachsaid at least one multiplier as an element defined by a markup language,the element comprising a start tag, content data, and an end tag,wherein the start tag and the end tag include an indication of thesalary range unit associated with each said at least one multiplier, andwherein the content data includes each said at least one multiplier.201. The computer program product of claim 200, wherein the storing ofthe element is to a file.
 202. The computer program product of claim201, wherein the file comprises an XML file.
 203. A system for using acomputer to improve a precision ratio when searching a resume database,comprising: means for receiving a resume; means for parsing the resumeto: locate at least one skill or experience-related phrase in theresume; determine an experience range for each said at least one skillor experience-related phrase by examining a use of each said at leastone skill or experience-related phrase in the resume; and compute a termof experience for each said at least one skill or experience-relatedphrase based on the experience range, wherein the term of experience foreach said at least one skill or experience-related phrase is a summationof the term of experience for each occurrence of the phrase associatedwith a different experience range; means for storing the resume in theresume database; means for creating a parsed resume based on the resume,the parsed resume including each said at least one skill orexperience-related phrase located in the resume, the term of experiencecomputed for each said at least one skill or experience-related phrase,and a relationship between the term of experience and each said at leastone skill or experience-related phrase; means for storing the parsedresume in the resume database; means for sending a database query to theresume database, the database query including a job description thatincludes at least one job requirement, each said at least one jobrequirement including a required skill or experience-related phrase, anda required term of experience; and means for receiving a result set inresponse to the database query, wherein the result set includes theresume when the parsed resume satisfies the job description.
 204. Thesystem of claim 203, wherein the received resume is one of a number ofresumes.
 205. The system of claim 204, wherein the receipt of the numberof resumes is automatic, scheduled, or periodic.
 206. The system ofclaim 203, wherein the resume includes at least one word, and whereinsaid at least one skill or experience-related phrase comprises said atleast one word.
 207. The system of claim 206, wherein, when the resumeincludes at least two words, said at least one skill orexperience-related phrase further comprises at least one word group,each said at least one word group including consecutive words from theresume.
 208. The system of claim 203, wherein the means for storing theresume further comprises: means for storing the resume as a publicresume, wherein the resume database is accessible by at least onerecruiter, and the public resume is accessible by every recruiter. 209.The system of claim 203, wherein the means for storing the resumefurther comprises: means for storing the resume as a private resume,wherein the resume database is accessible by at least one recruiter, andthe private resume is accessible by only one recruiter of said at leastone recruiter.
 210. The system of claim 203, wherein the means forstoring the resume further comprises: means for storing the resume as aprivate resume, wherein the resume database is accessible by at leastone recruitment team, each said at least one recruitment team includingat least one recruitment team member, and the private resume isaccessible by only one recruitment team of said at least one recruitmentteam.
 211. The system of claim 203, wherein said at least one skill orexperience-related phrase includes at least one attribute for acandidate.
 212. The system of claim 203, wherein the examining of theuse of each said at least one skill or experience-related phrase in theresume includes examining a portion of the resume that surrounds eachsaid at least one skill or experience-related phrase for a context. 213.The system of claim 212, further comprising: means for setting the termof experience to zero when the experience range is zero; means fordetermining a start time for the experience range when the experiencerange is greater than zero; means for determining an end time for theexperience range when the experience range is greater than zero; meansfor computing a time difference between the start time and the end timewhen the experience range is greater than zero; and means for settingthe term of experience to the time difference when the experience rangeis greater than zero, wherein the term of experience is rounded down toa unit of time.
 214. The system of claim 213, wherein the means forsetting the term of experience to the time difference further comprises:means for computing a repeated entry time difference for each said atleast one skill or experience-related phrase that is a repeated entryand is associated with an other experience range; and means for addingto the time difference each repeated entry time difference, wherein theother experience range includes an other start time and an other endtime, and wherein the other start time and the start time are different,or the other end time and the end time are different.
 215. The system ofclaim 214, wherein the means for storing the parsed resume furthercomprises: means for storing each said at least one skill orexperience-related phrase having an identical term of experience as anelement defined by a markup language, the element comprising a starttag, content data, and an end tag, wherein the start tag and the end taginclude the identical term of experience, and wherein the content dataincludes each said at least one skill or experience-related phrasehaving the identical term of experience.
 216. The system of claim 215,wherein the content data further includes a nested element comprising anested start tag, nested content data, and a nested end tag, wherein thenested start tag and the nested end tag include a nested term ofexperience, and wherein the nested content data includes each said atleast one skill or experience-related phrase having the nested term ofexperience.
 217. The system of claim 216, wherein the nested term ofexperience is greater than the identical term of experience.
 218. Thesystem of claim 215, wherein the storing of the element is to a file.219. The system of claim 218, wherein the file comprises an XML file.220. The system of claim 203, further comprising: means for sending aportion of the parsed resume to a candidate.
 221. The system of claim220, wherein a reference to the portion of the parsed resume is sent ina message to the candidate.
 222. The system of claim 220, furthercomprising: means for receiving a modified copy of the portion of theparsed resume.
 223. The system of claim 222, further comprising: meansfor creating a replacement resume based on the modified copy of theportion of the parsed resume.
 224. The system of claim 203, furthercomprising: means for receiving the job description; means for storingthe job description in the resume database; and means for sending aportion of the result set to a recruiter, wherein the result setincludes at least one matching resume from the resume database, eachsaid at least one matching resume satisfying the job description. 225.The system of claim 224, wherein the required term of experience isrounded up to a unit of time.
 226. The system of claim 225, wherein eachsaid at least one matching resume satisfies the job description when theparsed resume includes the required skill or experience-related phrasefor each said at least one job requirement, and the term of experiencefor the required skill or experience-related phrase in the parsed resumeis greater than or equal to the required term of experience.
 227. Thesystem of claim 226, wherein at least one of said at least one jobrequirement includes at least one alternative job requirement, each saidat least one alternative job requirement comprising an alternativerequired skill or experience-related phrase and an alternative requiredterm of experience, and wherein each said at least one matching resumesatisfies said at least one of said at least one job requirement whenthe parsed resume includes either: the required skill orexperience-related phrase for said at least one of said at least one jobrequirement, and the term of experience for the required skill orexperience-related phrase in the parsed resume is greater than or equalto the required term of experience; or the alternative required skill orexperience-related phrase for any said at least one alternative jobrequirement, and the term of experience for the alternative requiredskill or experience-related phrase in the parsed resume is greater thanor equal to the alternative required term of experience.
 228. The systemof claim 225, wherein each said at least one matching resume satisfiesthe job description when the parsed resume includes the required skillor experience-related phrase for any said at least one job requirement,and the term of experience for the required skill or experience-relatedphrase in the parsed resume is greater than or equal to the requiredterm of experience.
 229. The system of claim 224, wherein the jobdescription is a clone of an existing job description stored in theresume database.
 230. The system of claim 224, wherein the received jobdescription is one of a number of job descriptions.
 231. The system ofclaim 230, wherein the receipt of the number of job descriptions isautomatic, scheduled, or periodic.
 232. The system of claim 224, whereina reference to the portion of the result set is sent.
 233. The system ofclaim 224, further comprising: means for identifying as a selectedresume one of said at least one matching resume; and means fordisplaying the selected resume on a display screen having a left sideand a right side, the left side showing a parsed representation of theselected resume, and the right side showing a marked-up representationof the selected resume.
 234. The system of claim 233, wherein themarked-up representation includes at least one occurrence of therequired skill or experience-related phrase for each said at least onejob requirement, and wherein the means for displaying the selectedresume further comprises: means for marking each said at least oneoccurrence of the required skill or experience-related phrase for eachsaid at least one job requirement.
 235. The system of claim 234, whereinthe marking includes highlighting each said at least one occurrence ofthe required skill or experience-related phrase for each said at leastone job requirement, or displaying in reverse video each said at leastone occurrence of the required skill or experience-related phrase foreach said at least one job requirement.
 236. The system of claim 203,wherein the job description further includes a required level ofeducation or a required field of specialization, the system furthercomprising: means for storing the job description in the resumedatabase; and means for sending a portion of the result set, wherein theresult set includes at least one matching resume from the resumedatabase, each said at least one matching resume satisfying the jobdescription.
 237. The system of claim 236, wherein each said at leastone matching resume satisfies the job description when the parsed resumeincludes the required level of education, the required field ofspecialization, or a phrase implying the required level of education orthe required field of specialization.
 238. The system of claim 203,wherein the job description further includes a required salary rangecomprising a minimum required salary and a maximum required salary, thesystem further comprising: means for storing the job description; andmeans for sending a portion of the result set, wherein the result setincludes at least one matching resume from the resume database, eachsaid at least one matching resume satisfying the job description. 239.The system of claim 238, wherein each said at least one matching resumesatisfies the job description when the parsed resume includes anexpected salary that falls within the required salary range.
 240. Thesystem of claim 239, wherein the expected salary falls within therequired salary range when: the expected salary is greater than or equalto the minimum required salary, and the expected salary is less than orequal to the maximum required salary.
 241. The system of claim 240,wherein the parsed resume includes at least one salary range set torepresent the expected salary, each said at least one salary range setincluding a salary range unit, and a multiplier, and wherein amultiplication of the salary range unit and the multiplier yields aresult that is the greatest integer that is less than or equal to theexpected salary.
 242. The system of claim 203, further comprising: meansfor extracting education data from the resume; and means for storing theeducation data in the parsed resume.
 243. The system of claim 242,wherein the means for storing the education data further comprises:means for storing the education data in an element defined by a markuplanguage, the element comprising a start tag, content data, and an endtag, wherein the content data includes the education data.
 244. Thesystem of claim 243, wherein the storing of the element is to a file.245. The system of claim 244, wherein the file comprises an XML file.246. The system of claim 243, wherein the education data includes atleast one education summary, and wherein the means for storing theeducation data further comprises: means for storing each said at leastone education summary in an education summary element defined by amarkup language, the education summary element comprising an educationsummary start tag, education summary content data, and an educationsummary end tag, wherein the education summary content data includeseach said at least one education summary.
 247. The system of claim 246,wherein each said at least one education summary includes a degree, afield of specialization, a school name, and a graduation year, andwherein the means for storing the education data further comprises:means for storing the education summary content data in an educationelement defined by a markup language, the education element comprisingan education start tag, education content data, and an education endtag, wherein the education start tag and the education end tag includean indication of the degree, and wherein the education content dataincludes each said at least one education summary.
 248. The system ofclaim 247, wherein the education content data further includes a nestededucation element comprising a nested education start tag, nestededucation content data, and a nested education end tag, wherein thenested education start tag and the nested education end tag include anindication of a prerequisite degree implied by the degree, and whereinthe nested education content data includes each said at least oneeducation summary.
 249. The system of claim 243, wherein the means forstoring the education data further comprises: means for storing degreedata in a degree element defined by a markup language, the degreeelement comprising an degree start tag, degree content data, and adegree end tag, wherein the education data includes at least oneeducation summary, each said at least one education summary including adegree and at least one prerequisite degree implied by the degree, andwherein the degree content data includes, for each said at least oneeducation summary, the degree and each said at least one prerequisitedegree.
 250. The system of claim 203, further comprising: means forobtaining an expected salary for a candidate; means for converting theexpected salary to at least one multiplier; and means for storing eachsaid at least one multiplier in the parsed resume, wherein each said atleast one multiplier is associated with a salary range unit, and whereineach said at least one multiplier is the greatest integer that is lessthan or equal to a result of a division of the expected salary by thesalary range unit.
 251. The system of claim 250, wherein the resumefurther comprises the expected salary.
 252. The system of claim 250,wherein the means for storing each said at least one multiplier furthercomprises: means for storing each said at least one multiplier as anelement defined by a markup language, the element comprising a starttag, content data, and an end tag, wherein the start tag and the end taginclude an indication of the salary range unit associated with each saidat least one multiplier, and wherein the content data includes each saidat least one multiplier.
 253. The system of claim 252, wherein thestoring of the element is to a file.
 254. The system of claim 253,wherein the file comprises an XML file.
 255. A system for using acomputer to improve a precision ratio when searching a resume database,comprising: a memory device resident in the computer; and a processordisposed in communication with the memory device, the processorconfigured to: receive a resume; parse the resume to: locate at leastone skill or experience-related phrase in the resume; determine anexperience range for each said at least one skill or experience-relatedphrase by examining a use of each said at least one skill orexperience-related phrase in the resume; and compute a term ofexperience for each said at least one skill or experience-related phrasebased on the experience range, wherein the term of experience for eachsaid at least one skill or experience-related phrase is a summation ofthe term of experience for each occurrence of the phrase associated witha different experience range; store the resume in the resume database;associate at least one of said at least one skill or experience-relatedphrase located in the resume with at least one implied skill orexperience-related phrase, wherein a term of experience for each said atleast one implied skill or experience-related phrase is the term ofexperience computed for said at least one of said at least one skill orexperience-related phrase, and wherein said at least one skill orexperience-related phrase and said at least one implied skill orexperience-related phrase are searchable phrases in the resume; create aparsed resume based on the resume, the parsed resume including eachsearchable phrase in the resume, the term of experience for eachsearchable phrase, and a relationship between the term of experience andeach searchable phrase; store the parsed resume in the resume database;send a database query to the resume database, the database queryincluding a job description that includes at least one job requirement,each said at least one job requirement including a required skill orexperience-related phrase, and a required term of experience; andreceive a result set in response to the database query, wherein theresult set includes the resume when the parsed resume satisfies the jobdescription.
 256. The system of claim 255, wherein at least one of eachsaid at least one implied skill or experience-related phrase comprises abroader skill or experience-related phrase.
 257. The system of claim255, wherein the resume comprises a document in an electronic format.258. The system of claim 257, wherein the electronic format includes astandard digital document format.
 259. The system of claim 255, whereinthe resume comprises a curriculum vitae.
 260. The system of claim 255,wherein the processor receives the resume from a candidate.
 261. Thesystem of claim 260, wherein the candidate creates the resume.
 262. Thesystem of claim 255, wherein the received resume is one of a number ofresumes.
 263. The system of claim 262, wherein the receipt of the numberof resumes is automatic, scheduled, or periodic.
 264. The system ofclaim 255, wherein the resume includes at least one word, and whereinsaid at least one skill or experience-related phrase comprises said atleast one word.
 265. The system of claim 264, wherein, when the resumeincludes at least two words, said at least one skill orexperience-related phrase further comprises at least one word group,each said at least one word group including consecutive words from theresume.
 266. The system of claim 255, wherein each said at least oneskill or experience-related phrase comprises a skill, a job location, atitle, a department, a responsibility, a duty, an action, anachievement, an accomplishment, a relationship, a product, aconsultation, a group, a team, a field, a space, an area of endeavor, acompany, an industry, a technical package, or a tool.
 267. The system ofclaim 255, wherein to store the resume, the processor is furtherconfigured to: store the resume as a public resume, wherein the resumedatabase is accessible by at least one recruiter, and the public resumeis accessible by every recruiter.
 268. The system of claim 255, whereinto store the resume, the processor is further configured to: store theresume as a private resume, wherein the resume database is accessible byat least one recruiter, and the private resume is accessible by only onerecruiter of said at least one recruiter.
 269. The system of claim 255,wherein to store the resume, the processor is further configured to:store the resume as a private resume, wherein the resume database isaccessible by at least one recruitment team, each said at least onerecruitment team including at least one recruitment team member, and theprivate resume is accessible by only one recruitment team of said atleast one recruitment team.
 270. The system of claim 255, wherein toassociate said at least one of said at least one skill orexperience-related phrase with each said at least one implied skill orexperience-related phrase, the processor is further configured to:retrieve each said at least one implied skill or experience-relatedphrase from a phrase mapping table that relates each said at least oneof said at least one skill or experience-related phrase to each said atleast one implied skill or experience-related phrase.
 271. The system ofclaim 255, wherein said at least one skill or experience-related phraseincludes at least one attribute for a candidate.
 272. The system ofclaim 271, wherein said at least one attribute includes a name, aresidence or business address, a telephone number, an electronic mailaddress, education data, past employer data, or salary data.
 273. Thesystem of claim 272, wherein the telephone number includes a homenumber, a work number, a facsimile number, or a cellular number. 274.The system of claim 272, wherein the education data includes a degree, amajor, a year, or a school name.
 275. The system of claim 272, whereinthe past employer data includes an employer name, a last title, and aperiod of employment.
 276. The system of claim 272, wherein the salarydata includes a current salary and an expected salary.
 277. The systemof claim 255, wherein the examining of the use of each said at least oneskill or experience-related phrase in the resume includes examining aportion of the resume that surrounds each said at least one skill orexperience-related phrase for a context.
 278. The system of claim 277,wherein a context for each said at least one implied skill orexperience-related phrase is the context of the implying said at leastone skill or experience-related phrase.
 279. The system of claim 278,wherein the processor is further configured to: when the experiencerange is zero: set the term of experience to zero; and when theexperience range is greater than zero: determine a start time for theexperience range; determine an end time for the experience range;compute a time difference between the start time and the end time; andset the term of experience to the time difference, wherein the term ofexperience is rounded down to a unit of time.
 280. The system of claim279, wherein the unit of time is a number of seconds, minutes, hours,days, weeks, months, years, or decades.
 281. The system of claim 279,wherein the unit of time is an integer.
 282. The system of claim 279,wherein the unit of time is not an integer.
 283. The system of claim279, wherein to set the term of experience to the time difference, theprocessor is further configured to: compute a repeated entry timedifference for each of the searchable phrases that is a repeated entryand is associated with an other experience range; and add to the timedifference each repeated entry time difference, wherein the otherexperience range includes an other start time and an other end time, andwherein the other start time and the start time are different, or theother end time and the end time are different.
 284. The system of claim283, wherein to store the parsed resume, the processor is furtherconfigured to: store each of the searchable phrases having an identicalterm of experience as an element defined by a markup language, theelement comprising a start tag, content data, and an end tag, whereinthe start tag and the end tag include the identical term of experience,and wherein the content data includes each of the searchable phraseshaving the identical term of experience.
 285. The system of claim 284,wherein the content data further includes a nested element comprising anested start tag, nested content data, and a nested end tag, wherein thenested start tag and the nested end tag include a nested term ofexperience, and wherein the nested content data includes each of thesearchable phrases having the nested term of experience.
 286. The systemof claim 285, wherein the nested term of experience is greater than theidentical term of experience.
 287. The system of claim 284, wherein thestoring of the element is to a file.
 288. The system of claim 287,wherein the file comprises an XML file.
 289. The system of claim 255,wherein the processor is further configured to: send a portion of theparsed resume to a candidate.
 290. The system of claim 289, wherein theportion of the parsed resume is sent in a message to the candidate. 291.The system of claim 290, wherein the message includes an electronic mailmessage.
 292. The system of claim 290, wherein the portion of the parsedresume is an attachment to an electronic mail message.
 293. The systemof claim 289, wherein a reference to the portion of the parsed resume issent in a message to the candidate.
 294. The system of claim 289,wherein the processor is further configured to: receive a modified copyof the portion of the parsed resume.
 295. The system of claim 294,wherein the processor is further configured to: create a replacementresume based on the modified copy of the portion of the parsed resume.296. The system of claim 255, wherein the resume comprises a replacementresume.
 297. The system of claim 255, wherein the processor is furtherconfigured to: receive the job description; store the job description inthe resume database; and send a portion of the result set to arecruiter, wherein the result set includes at least one matching resumefrom the resume database, each said at least one matching resumesatisfying the job description.
 298. The system of claim 297, whereinthe required term of experience is rounded up to a unit of time. 299.The system of claim 298, wherein the unit of time is a number ofseconds, minutes, hours, days, weeks, months, years, or decades. 300.The system of claim 298, wherein the unit of time is an integer. 301.The system of claim 298, wherein the unit of time is not an integer.302. The system of claim 298, wherein each said at least one matchingresume satisfies the job description when the parsed resume includes therequired skill or experience-related phrase for each said at least onejob requirement, and the term of experience for the required skill orexperience-related phrase in the parsed resume is greater than or equalto the required term of experience.
 303. The system of claim 302,wherein at least one of said at least one job requirement includes atleast one alternative job requirement, each said at least onealternative job requirement comprising an alternative required skill orexperience-related phrase and an alternative required term ofexperience, and wherein each said at least one matching resume satisfiessaid at least one of said at least one job requirement when the parsedresume includes either: the required skill or experience-related phrasefor said at least one of said at least one job requirement, and the termof experience for the required skill or experience-related phrase in theparsed resume is greater than or equal to the required term ofexperience; or the alternative required skill or experience-relatedphrase for any said at least one alternative job requirement, and theterm of experience for the alternative required skill orexperience-related phrase in the parsed resume is greater than or equalto the alternative required term of experience.
 304. The system of claim298, wherein each said at least one matching resume satisfies the jobdescription when the parsed resume includes the required skill orexperience-related phrase for any said at least one job requirement, andthe term of experience for the required skill or experience-relatedphrase in the parsed resume is greater than or equal to the requiredterm of experience.
 305. The system of claim 297, wherein the processorreceives the job description from a recruiter.
 306. The system of claim305, wherein a recruiter creates the job description.
 307. The system ofclaim 297, wherein the job description is a clone of an existing jobdescription stored in the resume database.
 308. The system of claim 297,wherein the received job description is one of a number of jobdescriptions.
 309. The system of claim 308, wherein the receipt of thenumber of job descriptions is automatic, scheduled, or periodic. 310.The system of claim 297, wherein a reference to the portion of theresult set is sent.
 311. The system of claim 297, wherein the processoris further configured to: identify as a selected resume one of said atleast one matching resume; and display the selected resume on a displayscreen having a left side and a right side, the left side showing aparsed representation of the selected resume, and the right side showinga marked-up representation of the selected resume.
 312. The system ofclaim 311, wherein the marked-up representation includes at least oneoccurrence of the required skill or experience-related phrase or atleast one implying phrase of the required skill or experience-relatedphrase for said at least one job requirement, and wherein to display theselected resume, the processor is further configured to: mark each saidat least one occurrence of the required skill or experience-relatedphrase for each said at least one job requirement.
 313. The system ofclaim 312, wherein the marking includes highlighting each said at leastone occurrence of the required skill or experience-related phrase orsaid at least one implying phrase of the required skill orexperience-related phrase for said at least one job requirement, ordisplaying in reverse video each said at least one occurrence of therequired skill or experience-related phrase or said at least oneimplying phrase of the required skill or experience-related phrase forsaid at least one job requirement.
 314. The system of claim 255, whereinthe job description further includes a required level of education or arequired field of specialization, and wherein the processor is furtherconfigured to: store the job description in the resume database; andsend a portion of the result set, wherein the result set includes atleast one matching resume from the resume database, each said at leastone matching resume satisfying the job description.
 315. The system ofclaim 314, wherein each said at least one matching resume satisfies thejob description when the parsed resume includes the required level ofeducation, the required field of specialization, or a phrase implyingthe required level of education or the required field of specialization.316. The system of claim 255, wherein the job description furtherincludes a required salary range comprising a minimum required salaryand a maximum required salary, and wherein the processor is furtherconfigured to: store the job description; and send a portion of theresult set, wherein the result set includes at least one matching resumefrom the resume database, each said at least one matching resumesatisfying the job description.
 317. The system of claim 316, whereineach said at least one matching resume satisfies the job descriptionwhen the parsed resume includes an expected salary that falls within therequired salary range.
 318. The system of claim 317, wherein theexpected salary falls within the required salary range when: theexpected salary is greater than or equal to the minimum required salary,and the expected salary is less than or equal to the maximum requiredsalary.
 319. The system of claim 318, wherein the parsed resume includesat least one salary range set to represent the expected salary, eachsaid at least one salary range set including a salary range unit and amultiplier, and wherein a multiplication of the salary range unit andthe multiplier yields a result that is the greatest integer that is lessthan or equal to the expected salary.
 320. The system of claim 255,wherein the processor is further configured to: extract education datafrom the resume; and store the education data in the parsed resume. 321.The system of claim 320, wherein to store the education data, theprocessor is further configured to: store the education data in anelement defined by a markup language, the element comprising a starttag, content data, and an end tag, wherein the content data includes theeducation data.
 322. The system of claim 321, wherein the storing of theelement is to a file.
 323. The system of claim 322, wherein the filecomprises an XML file.
 324. The system of claim 321, wherein theeducation data includes at least one education summary, and wherein tostore the education data, the processor is further configured to: storeeach said at least one education summary in an education summary elementdefined by a markup language, the education summary element comprisingan education summary start tag, education summary content data, and aneducation summary end tag, wherein the education summary content dataincludes each said at least one education summary.
 325. The system ofclaim 324, wherein each said at least one education summary includes adegree, a field of specialization, a school name, and a graduation year,and wherein to store the education data, the processor is furtherconfigured to: store the education summary content data in an educationelement defined by a markup language, the education element comprisingan education start tag, education content data, and an education endtag, wherein the education start tag and the education end tag includean indication of the degree, and wherein the education content dataincludes each said at least one education summary.
 326. The system ofclaim 325, wherein the education content data further includes a nestededucation element comprising a nested education start tag, nestededucation content data, and a nested education end tag, wherein thenested education start tag and the nested education end tag include anindication of a prerequisite degree implied by the degree, and whereinthe nested education content data includes each said at least oneeducation summary.
 327. The system of claim 321, wherein to store theeducation data, the processor is further configured to: store degreedata in a degree element defined by a markup language, the degreeelement comprising an degree start tag, degree content data, and adegree end tag, wherein the education data includes at least oneeducation summary, each said at least one education summary including adegree and at least one prerequisite degree implied by the degree, andwherein the degree content data includes, for each said at least oneeducation summary, the degree and each said at least one prerequisitedegree.
 328. The system of claim 255, wherein the processor is furtherconfigured to: obtain an expected salary for a candidate; convert theexpected salary to at least one multiplier; and store each said at leastone multiplier in the parsed resume, wherein each said at least onemultiplier is associated with a salary range unit, and wherein each saidat least one multiplier is the greatest integer that is less than orequal to a result of a division of the expected salary by the salaryrange unit.
 329. The system of claim 328, wherein the resume furthercomprises the expected salary.
 330. The system of claim 328, wherein tostore each said at least one multiplier, the processor is furtherconfigured to: store each said at least one multiplier as an elementdefined by a markup language, the element comprising a start tag,content data, and an end tag, wherein the start tag and the end taginclude an indication of the salary range unit associated with each saidat least one multiplier, and wherein the content data includes each saidat least one multiplier.
 331. The system of claim 330, wherein thestoring of the element is to a file.
 332. The system of claim 331,wherein the file comprises an XML file.
 333. A method for using acomputer to improve a precision ratio when searching a resume database,comprising: receiving a resume in a memory device resident in thecomputer; parsing the resume to: locate at least one skill orexperience-related phrase in the resume; determine an experience rangefor each said at least one skill or experience-related phrase byexamining a use of each said at least one skill or experience-relatedphrase in the resume; and compute, by the computer, a term of experiencefor each said at least one skill or experience-related phrase based onthe experience range, wherein the term of experience for each said atleast one skill or experience-related phrase is a summation of the termof experience for each occurrence of the phrase associated with adifferent experience range; storing the resume in the resume database;associating at least one of said at least one skill orexperience-related phrase located in the resume with at least oneimplied skill or experience-related phrase, wherein a term of experiencefor each said at least one implied skill or experience-related phrase isthe term of experience computed for said at least one of said at leastone skill or experience-related phrase, and wherein said at least oneskill or experience-related phrase and said at least one implied skillor experience-related phrase are searchable phrases in the resume;creating a parsed resume based on the resume, the parsed resumeincluding each searchable phrase in the resume, the term of experiencefor each searchable phrase, and a relationship between the term ofexperience and each searchable phrase; storing the parsed resume in theresume database; sending a database query to the resume database, thedatabase query including a job description that includes at least onejob requirement, each said at least one job requirement including arequired skill or experience-related phrase, and a required term ofexperience; and receiving a result set in response to the databasequery, wherein the result set includes the resume when the parsed resumesatisfies the job description.
 334. The method of claim 333, wherein atleast one of each said at least one implied skill or experience-relatedphrase comprises a broader skill or experience-related phrase.
 335. Themethod of claim 333, wherein the resume comprises a document in anelectronic format.
 336. The method of claim 335, wherein the electronicformat includes a standard digital document format.
 337. The method ofclaim 333, wherein the resume comprises a curriculum vitae.
 338. Themethod of claim 333, wherein the receiving of the resume is from acandidate.
 339. The method of claim 338, wherein the candidate createsthe resume.
 340. The method of claim 333, wherein the received resume isone of a number of resumes.
 341. The method of claim 340, wherein thereceipt of the number of resumes is automatic, scheduled, or periodic.342. The method of claim 333, wherein the resume includes at least oneword, and wherein said at least one skill or experience-related phrasecomprises said at least one word.
 343. The method of claim 342, wherein,when the resume includes at least two words, said at least one skill orexperience-related phrase further comprises at least one word group,each said at least one word group including consecutive words from theresume.
 344. The method of claim 333, wherein each said at least oneskill or experience-related phrase comprises a skill, a job location, atitle, a department, a responsibility, a duty, an action, anachievement, an accomplishment, a relationship, a product, aconsultation, a group, a team, a field, a space, an area of endeavor, acompany, an industry, a technical package, or a tool.
 345. The method ofclaim 333, wherein the storing of the resume further comprises: storingthe resume as a public resume, wherein the resume database is accessibleby at least one recruiter, and the public resume is accessible by everyrecruiter.
 346. The method of claim 333, wherein the storing of theresume further comprises: storing the resume as a private resume,wherein the resume database is accessible by at least one recruiter, andthe private resume is accessible by only one recruiter of said at leastone recruiter.
 347. The method of claim 333, wherein the storing of theresume further comprises: storing the resume as a private resume,wherein the resume database is accessible by at least one recruitmentteam, each said at least one recruitment team including at least onerecruitment team member, and the private resume is accessible by onlyone recruitment team of said at least one recruitment team.
 348. Themethod of claim 333, wherein the associating of said at least one ofsaid at least one skill or experience-related phrase with each said atleast one implied skill or experience-related phrase further comprises:retrieving each said at least one implied skill or experience-relatedphrase from a phrase mapping table that relates each said at least oneof said at least one skill or experience-related phrase to each said atleast one implied skill or experience-related phrase.
 349. The method ofclaim 333, wherein said at least one skill or experience-related phraseincludes at least one attribute for a candidate.
 350. The method ofclaim 349, wherein said at least one attribute includes a name, aresidence or business address, a telephone number, an electronic mailaddress, education data, past employer data, or salary data.
 351. Themethod of claim 350, wherein the telephone number includes a homenumber, a work number, a facsimile number, or a cellular number. 352.The method of claim 350, wherein the education data includes a degree, amajor, a year, or a school name.
 353. The method of claim 350, whereinthe past employer data includes an employer name, a last title, and aperiod of employment.
 354. The method of claim 350, wherein the salarydata includes a current salary and an expected salary.
 355. The methodof claim 333, wherein the examining of the use of each said at least oneskill or experience-related phrase in the resume includes examining aportion of the resume that surrounds each said at least one skill orexperience-related phrase for a context.
 356. The method of claim 355,wherein a context for each said at least one implied skill orexperience-related phrase is the context of the implying said at leastone skill or experience-related phrase.
 357. The method of claim 356,further comprising: when the experience range is zero: setting the termof experience to zero; and when the experience range is greater thanzero: determining a start time for the experience range; determining anend time for the experience range; computing a time difference betweenthe start time and the end time; and setting the term of experience tothe time difference, wherein the term of experience is rounded down to aunit of time.
 358. The method of claim 357, wherein the unit of time isa number of seconds, minutes, hours, days, weeks, months, years, ordecades.
 359. The method of claim 357, wherein the unit of time is aninteger.
 360. The method of claim 357, wherein the unit of time is notan integer.
 361. The method of claim 357, wherein the setting of theterm of experience to the time difference further comprises: computing arepeated entry time difference for each of the searchable phrases thatis a repeated entry and is associated with an other experience range;and adding to the time difference each repeated entry time difference,wherein the other experience range includes an other start time and another end time, and wherein the other start time and the start time aredifferent, or the other end time and the end time are different. 362.The method of claim 361, wherein the storing of the parsed resumefurther comprises: storing each of the searchable phrases having anidentical term of experience as an element defined by a markup language,the element comprising a start tag, content data, and an end tag,wherein the start tag and the end tag include the identical term ofexperience, and wherein the content data includes each of the searchablephrases having the identical term of experience.
 363. The method ofclaim 362, wherein the content data further includes a nested elementcomprising a nested start tag, nested content data, and a nested endtag, wherein the nested start tag and the nested end tag include anested term of experience, and wherein the nested content data includeseach of the searchable phrases having the nested term of experience.364. The method of claim 363, wherein the nested term of experience isgreater than the identical term of experience.
 365. The method of claim362, wherein the storing of the element is to a file.
 366. The method ofclaim 365, wherein the file comprises an XML file.
 367. The method ofclaim 333, further comprising: sending a portion of the parsed resume toa candidate.
 368. The method of claim 367, wherein the portion of theparsed resume is sent in a message to the candidate.
 369. The method ofclaim 368, wherein the message includes an electronic mail message. 370.The method of claim 368, wherein the portion of the parsed resume is anattachment to an electronic mail message.
 371. The method of claim 367,wherein a reference to the portion of the parsed resume is sent in amessage to the candidate.
 372. The method of claim 367, furthercomprising: receiving a modified copy of the portion of the parsedresume.
 373. The method of claim 372, further comprising: creating areplacement resume based on the modified copy of the portion of theparsed resume.
 374. The method of claim 333, wherein the resumecomprises a replacement resume.
 375. The method of claim 333, furthercomprising: receiving the job description; storing the job descriptionin the resume database; and sending a portion of the result set to arecruiter, wherein the result set includes at least one matching resumefrom the resume database, each said at least one matching resumesatisfying the job description.
 376. The method of claim 375, whereinthe required term of experience is rounded up to a unit of time. 377.The method of claim 376, wherein the unit of time is a number ofseconds, minutes, hours, days, weeks, months, years, or decades. 378.The method of claim 376, wherein the unit of time is an integer. 379.The method of claim 376, wherein the unit of time is not an integer.380. The method of claim 376, wherein each said at least one matchingresume satisfies the job description when the parsed resume includes therequired skill or experience-related phrase for each said at least onejob requirement, and the term of experience for the required skill orexperience-related phrase in the parsed resume is greater than or equalto the required term of experience.
 381. The method of claim 380,wherein at least one of said at least one job requirement includes atleast one alternative job requirement, each said at least onealternative job requirement comprising an alternative required skill orexperience-related phrase and an alternative required term ofexperience, and wherein each said at least one matching resume satisfiessaid at least one of said at least one job requirement when the parsedresume includes either: the required skill or experience-related phrasefor said at least one of said at least one job requirement, and the termof experience for the required skill or experience-related phrase in theparsed resume is greater than or equal to the required term ofexperience; or the alternative required skill or experience-relatedphrase for any said at least one alternative job requirement, and theterm of experience for the alternative required skill orexperience-related phrase in the parsed resume is greater than or equalto the alternative required term of experience.
 382. The method of claim376, wherein each said at least one matching resume satisfies the jobdescription when the parsed resume includes the required skill orexperience-related phrase for any said at least one job requirement, andthe term of experience for the required skill or experience-relatedphrase in the parsed resume is greater than or equal to the requiredterm of experience.
 383. The method of claim 375, wherein the receivingof the job description is from a recruiter.
 384. The method of claim383, wherein a recruiter creates the job description.
 385. The method ofclaim 375, wherein the job description is a clone of an existing jobdescription stored in the resume database.
 386. The method of claim 375,wherein the received job description is one of a number of jobdescriptions.
 387. The method of claim 386, wherein the receipt of thenumber of job descriptions is automatic, scheduled, or periodic. 388.The method of claim 375, wherein a reference to the portion of theresult set is sent.
 389. The method of claim 375, further comprising:identifying as a selected resume one of said at least one matchingresume; and displaying the selected resume on a display screen having aleft side and a right side, the left side showing a parsedrepresentation of the selected resume, and the right side showing amarked-up representation of the selected resume.
 390. The method ofclaim 389, wherein the marked-up representation includes at least oneoccurrence of the required skill or experience-related phrase or atleast one implying phrase of the required skill or experience-relatedphrase for said at least one job requirement, and wherein the displayingof the selected resume further comprises: marking each said at least oneoccurrence of the required skill or experience-related phrase for eachsaid at least one job requirement.
 391. The method of claim 390, whereinthe marking includes highlighting each said at least one occurrence ofthe required skill or experience-related phrase or said at least oneimplying phrase of the required skill or experience-related phrase forsaid at least one job requirement, or displaying in reverse video eachsaid at least one occurrence of the required skill or experience-relatedphrase or said at least one implying phrase of the required skill orexperience-related phrase for said at least one job requirement. 392.The method of claim 333, wherein the job description further includes arequired level of education or a required field of specialization, themethod further comprising: storing the job description in the resumedatabase; and sending a portion of the result set, wherein the resultset includes at least one matching resume from the resume database, eachsaid at least one matching resume satisfying the job description. 393.The method of claim 392, wherein each said at least one matching resumesatisfies the job description when the parsed resume includes therequired level of education, the required field of specialization, or aphrase implying the required level of education or the required field ofspecialization.
 394. The method of claim 333, wherein the jobdescription further includes a required salary range comprising aminimum required salary and a maximum required salary, the methodfurther comprising: storing the job description; and sending a portionof the result set, wherein the result set includes at least one matchingresume from the resume database, each said at least one matching resumesatisfying the job description.
 395. The method of claim 394, whereineach said at least one matching resume satisfies the job descriptionwhen the parsed resume includes an expected salary that falls within therequired salary range.
 396. The method of claim 395, wherein theexpected salary falls within the required salary range when: theexpected salary is greater than or equal to the minimum required salary,and the expected salary is less than or equal to the maximum requiredsalary.
 397. The method of claim 396, wherein the parsed resume includesat least one salary range set to represent the expected salary, eachsaid at least one salary range set including a salary range unit and amultiplier, and wherein a multiplication of the salary range unit andthe multiplier yields a result that is the greatest integer that is lessthan or equal to the expected salary.
 398. The method of claim 333,further comprising: extracting education data from the resume; andstoring the education data in the parsed resume.
 399. The method ofclaim 398, wherein the storing of the education data further comprises:storing the education data in an element defined by a markup language,the element comprising a start tag, content data, and an end tag,wherein the content data includes the education data.
 400. The method ofclaim 399, wherein the storing of the element is to a file.
 401. Themethod of claim 400, wherein the file comprises an XML file.
 402. Themethod of claim 399, wherein the education data includes at least oneeducation summary, and wherein the storing of the education data furthercomprises: storing each said at least one education summary in aneducation summary element defined by a markup language, the educationsummary element comprising an education summary start tag, educationsummary content data, and an education summary end tag, wherein theeducation summary content data includes each said at least one educationsummary.
 403. The method of claim 402, wherein each said at least oneeducation summary includes a degree, a field of specialization, a schoolname, and a graduation year, and wherein the storing of the educationdata further comprises: storing the education summary content data in aneducation element defined by a markup language, the education elementcomprising an education start tag, education content data, and aneducation end tag, wherein the education start tag and the education endtag include an indication of the degree, and wherein the educationcontent data includes each said at least one education summary.
 404. Themethod of claim 403, wherein the education content data further includesa nested education element comprising a nested education start tag,nested education content data, and a nested education end tag, whereinthe nested education start tag and the nested education end tag includean indication of a prerequisite degree implied by the degree, andwherein the nested education content data includes each said at leastone education summary.
 405. The method of claim 399, wherein the storingof the education data further comprises: storing degree data in a degreeelement defined by a markup language, the degree element comprising andegree start tag, degree content data, and a degree end tag, wherein theeducation data includes at least one education summary, each said atleast one education summary including a degree and at least oneprerequisite degree implied by the degree, and wherein the degreecontent data includes, for each said at least one education summary, thedegree and each said at least one prerequisite degree.
 406. The methodof claim 333, further comprising: obtaining an expected salary for acandidate; converting the expected salary to at least one multiplier;and storing each said at least one multiplier in the parsed resume,wherein each said at least one multiplier is associated with a salaryrange unit, and wherein each said at least one multiplier is thegreatest integer that is less than or equal to a result of a division ofthe expected salary by the salary range unit.
 407. The method of claim406, wherein the resume further comprises the expected salary.
 408. Themethod of claim 406, wherein the storing of each said at least onemultiplier further comprises: storing each said at least one multiplieras an element defined by a markup language, the element comprising astart tag, content data, and an end tag, wherein the start tag and theend tag include an indication of the salary range unit associated witheach said at least one multiplier, and wherein the content data includeseach said at least one multiplier.
 409. The method of claim 408, whereinthe storing of the element is to a file.
 410. The method of claim 409,wherein the file comprises an XML file.
 411. A computer program product,to be used on a computer, for improving a precision ratio when searchinga resume database, comprising: a computer readable medium storing:program code for receiving a resume; program code for parsing the resumeto: locate at least one skill or experience-related phrase in theresume; determine an experience range for each said at least one skillor experience-related phrase by examining a use of each said at leastone skill or experience-related phrase in the resume; and compute a termof experience for each said at least one skill or experience-relatedphrase based on the experience range, wherein the term of experience foreach said at least one skill or experience-related phrase is a summationof the term of experience for each occurrence of the phrase associatedwith a different experience range; program code for storing the resumein the resume database; program code for associating at least one ofsaid at least one skill or experience-related phrase located in theresume with at least one implied skill or experience-related phrase,wherein a term of experience for each said at least one implied skill orexperience-related phrase is the term of experience computed for said atleast one of said at least one skill or experience-related phrase, andwherein said at least one skill or experience-related phrase and said atleast one implied skill or experience-related phrase are searchablephrases in the resume; program code for creating a parsed resume basedon the resume, the parsed resume including each searchable phrase in theresume, the term of experience for each searchable phrase, and arelationship between the term of experience and each searchable phrase;program code for storing the parsed resume in the resume database;program code for sending a database query to the resume database, thedatabase query including a job description that includes at least onejob requirement, each said at least one job requirement including arequired skill or experience-related phrase, and a required term ofexperience; and program code for receiving a result set in response tothe database query, wherein the result set includes the resume when theparsed resume satisfies the job description.
 412. The computer programproduct of claim 411, wherein at least one of each said at least oneimplied skill or experience-related phrase comprises a broader skill orexperience-related phrase.
 413. The computer program product of claim411, wherein the received resume is one of a number of resumes.
 414. Thecomputer program product of claim 413, wherein the receipt of the numberof resumes is automatic, scheduled, or periodic.
 415. The computerprogram product of claim 411, wherein the resume includes at least oneword, and wherein said at least one skill or experience-related phrasecomprises said at least one word.
 416. The computer program product ofclaim 415, wherein, when the resume includes at least two words, said atleast one skill or experience-related phrase further comprises at leastone word group, each said at least one word group including consecutivewords from the resume.
 417. The computer program product of claim 411,wherein the program code for storing the resume further comprises:program code for storing the resume as a public resume, wherein theresume database is accessible by at least one recruiter, and the publicresume is accessible by every recruiter.
 418. The computer programproduct of claim 411, wherein the program code for storing the resumefurther comprises: program code for storing the resume as a privateresume, wherein the resume database is accessible by at least onerecruiter, and the private resume is accessible by only one recruiter ofsaid at least one recruiter.
 419. The computer program product of claim411, wherein the program code for storing the resume further comprises:program code for storing the resume as a private resume, wherein theresume database is accessible by at least one recruitment team, eachsaid at least one recruitment team including at least one recruitmentteam member, and the private resume is accessible by only onerecruitment team of said at least one recruitment team.
 420. Thecomputer program product of claim 411, wherein the program code forassociating said at least one of said at least one skill orexperience-related phrase with each said at least one implied skill orexperience-related phrase further comprises: program code for retrievingeach said at least one implied skill or experience-related phrase from aphrase mapping table that relates each said at least one of said atleast one skill or experience-related phrase to each said at least oneimplied skill or experience-related phrase.
 421. The computer programproduct of claim 411, wherein said at least one skill orexperience-related phrase includes at least one attribute for acandidate.
 422. The computer program product of claim 411, wherein theexamining of the use of each said at least one skill orexperience-related phrase in the resume includes examining a portion ofthe resume that surrounds each said at least one skill orexperience-related phrase for a context.
 423. The computer programproduct of claim 422, wherein a context for each said at least oneimplied skill or experience-related phrase is the context of theimplying said at least one skill or experience-related phrase.
 424. Thecomputer program product of claim 423, the computer readable mediumfurther storing: program code for setting the term of experience to zerowhen the experience range is zero; program code for determining a starttime for the experience range when the experience range is greater thanzero; program code for determining an end time for the experience rangewhen the experience range is greater than zero; program code forcomputing a time difference between the start time and the end time whenthe experience range is greater than zero; and program code for settingthe term of experience to the time difference when the experience rangeis greater than zero, wherein the term of experience is rounded down toa unit of time.
 425. The computer program product of claim 424, whereinthe program code for setting the term of experience to the timedifference further comprises: program code for computing a repeatedentry time difference for each of the searchable phrases that is arepeated entry and is associated with an other experience range; andprogram code for adding to the time difference each repeated entry timedifference, wherein the other experience range includes an other starttime and an other end time, and wherein the other start time and thestart time are different, or the other end time and the end time aredifferent.
 426. The computer program product of claim 425, wherein theprogram code for storing the parsed resume further comprises: programcode for storing each of the searchable phrases having an identical termof experience as an element defined by a markup language, the elementcomprising a start tag, content data, and an end tag, wherein the starttag and the end tag include the identical term of experience, andwherein the content data includes each of the searchable phrases havingthe identical term of experience.
 427. The computer program product ofclaim 426, wherein the content data further includes a nested elementcomprising a nested start tag, nested content data, and a nested endtag, wherein the nested start tag and the nested end tag include anested term of experience, and wherein the nested content data includeseach of the searchable phrases having the nested term of experience.428. The computer program product of claim 427, wherein the nested termof experience is greater than the identical term of experience.
 429. Thecomputer program product of claim 426, wherein the storing of theelement is to a file.
 430. The computer program product of claim 429,wherein the file comprises an XML file.
 431. The computer programproduct of claim 411, the computer readable medium further storing:program code for sending a portion of the parsed resume to a candidate.432. The computer program product of claim 431, wherein a reference tothe portion of the parsed resume is sent in a message to the candidate.433. The computer program product of claim 431, the computer readablemedium further storing: program code for receiving a modified copy ofthe portion of the parsed resume.
 434. The computer program product ofclaim 433, the computer readable medium further storing: program codefor creating a replacement resume based on the modified copy of theportion of the parsed resume.
 435. The computer program product of claim411, the computer readable medium further storing: program code forreceiving the job description; program code for storing the jobdescription in the resume database; and program code for sending aportion of the result set to a recruiter, wherein the result setincludes at least one matching resume from the resume database, eachsaid at least one matching resume satisfying the job description. 436.The computer program product of claim 435, wherein the required term ofexperience is rounded up to a unit of time.
 437. The computer programproduct of claim 436, wherein each said at least one matching resumesatisfies the job description when the parsed resume includes therequired skill or experience-related phrase for each said at least onejob requirement, and the term of experience for the required skill orexperience-related phrase in the parsed resume is greater than or equalto the required term of experience.
 438. The computer program product ofclaim 437, wherein at least one of said at least one job requirementincludes at least one alternative job requirement, each said at leastone alternative job requirement comprising an alternative required skillor experience-related phrase and an alternative required term ofexperience, and wherein each said at least one matching resume satisfiessaid at least one of said at least one job requirement when the parsedresume includes either: the required skill or experience-related phrasefor said at least one of said at least one job requirement, and the termof experience for the required skill or experience-related phrase in theparsed resume is greater than or equal to the required term ofexperience; or the alternative required skill or experience-relatedphrase for any said at least one alternative job requirement, and theterm of experience for the alternative required skill orexperience-related phrase in the parsed resume is greater than or equalto the alternative required term of experience.
 439. The computerprogram product of claim 436, wherein each said at least one matchingresume satisfies the job description when the parsed resume includes therequired skill or experience-related phrase for any said at least onejob requirement, and the term of experience for the required skill orexperience-related phrase in the parsed resume is greater than or equalto the required term of experience.
 440. The computer program product ofclaim 435, wherein the job description is a clone of an existing jobdescription stored in the resume database.
 441. The computer programproduct of claim 435, wherein the received job description is one of anumber of job descriptions.
 442. The computer program product of claim441, wherein the receipt of the number of job descriptions is automatic,scheduled, or periodic.
 443. The computer program product of claim 435,wherein a reference to the portion of the result set is sent.
 444. Thecomputer program product of claim 435, the computer readable mediumfurther storing: program code for identifying as a selected resume oneof said at least one matching resume; and program code for displayingthe selected resume on a display screen having a left side and a rightside, the left side showing a parsed representation of the selectedresume, and the right side showing a marked-up representation of theselected resume.
 445. The computer program product of claim 444, whereinthe marked-up representation includes at least one occurrence of therequired skill or experience-related phrase or at least one implyingphrase of the required skill or experience-related phrase for said atleast one job requirement, and wherein the program code for displayingthe selected resume further comprises: program code for marking eachsaid at least one occurrence of the required skill or experience-relatedphrase for each said at least one job requirement.
 446. The computerprogram product of claim 445, wherein the marking includes highlightingeach said at least one occurrence of the required skill orexperience-related phrase or said at least one implying phrase of therequired skill or experience-related phrase for said at least one jobrequirement, or displaying in reverse video each said at least oneoccurrence of the required skill or experience-related phrase or said atleast one implying phrase of the required skill or experience-relatedphrase for said at least one job requirement.
 447. The computer programproduct of claim 411, wherein the job description further includes arequired level of education or a required field of specialization, thecomputer readable medium further storing: program code for storing thejob description in the resume database; and program code for sending aportion of the result set, wherein the result set includes at least onematching resume from the resume database, each said at least onematching resume satisfying the job description.
 448. The computerprogram product of claim 447, wherein each said at least one matchingresume satisfies the job description when the parsed resume includes therequired level of education, the required field of specialization, or aphrase implying the required level of education or the required field ofspecialization.
 449. The computer program product of claim 411, whereinthe job description further includes a required salary range comprisinga minimum required salary and a maximum required salary, the computerreadable medium further storing: program code for storing the jobdescription; and program code for sending a portion of the result set,wherein the result set includes at least one matching resume from theresume database, each said at least one matching resume satisfying thejob description.
 450. The computer program product of claim 449, whereineach said at least one matching resume satisfies the job descriptionwhen the parsed resume includes an expected salary that falls within therequired salary range.
 451. The computer program product of claim 450,wherein the expected salary falls within the required salary range when:the expected salary is greater than or equal to the minimum requiredsalary, and the expected salary is less than or equal to the maximumrequired salary.
 452. The computer program product of claim 451, whereinthe parsed resume includes at least one salary range set to representthe expected salary, each said at least one salary range set including asalary range unit and a multiplier, and wherein a multiplication of thesalary range unit and the multiplier yields a result that is thegreatest integer that is less than or equal to the expected salary. 453.The computer program product of claim 411, the computer readable mediumfurther storing: program code for extracting education data from theresume; and program code for storing the education data in the parsedresume.
 454. The computer program product of claim 453, wherein theprogram code for storing the education data further comprises: programcode for storing the education data in an element defined by a markuplanguage, the element comprising a start tag, content data, and an endtag, wherein the content data includes the education data.
 455. Thecomputer program product of claim 454, wherein the storing of theelement is to a file.
 456. The computer program product of claim 455,wherein the file comprises an XML file.
 457. The computer programproduct of claim 454, wherein the education data includes at least oneeducation summary, and wherein the program code for storing theeducation data further comprises: program code for storing each said atleast one education summary in an education summary element defined by amarkup language, the education summary element comprising an educationsummary start tag, education summary content data, and an educationsummary end tag, wherein the education summary content data includeseach said at least one education summary.
 458. The computer programproduct of claim 457, wherein each said at least one education summaryincludes a degree, a field of specialization, a school name, and agraduation year, and wherein the program code for storing the educationdata further comprises: program code for storing the education summarycontent data in an education element defined by a markup language, theeducation element comprising an education start tag, education contentdata, and an education end tag, wherein the education start tag and theeducation end tag include an indication of the degree, and wherein theeducation content data includes each said at least one educationsummary.
 459. The computer program product of claim 458, wherein theeducation content data further includes a nested education elementcomprising a nested education start tag, nested education content data,and a nested education end tag, wherein the nested education start tagand the nested education end tag include an indication of a prerequisitedegree implied by the degree, and wherein the nested education contentdata includes each said at least one education summary.
 460. Thecomputer program product of claim 454, wherein the program code forstoring the education data further comprises: program code for storingdegree data in a degree element defined by a markup language, the degreeelement comprising an degree start tag, degree content data, and adegree end tag, wherein the education data includes at least oneeducation summary, each said at least one education summary including adegree and at least one prerequisite degree implied by the degree, andwherein the degree content data includes, for each said at least oneeducation summary, the degree and each said at least one prerequisitedegree.
 461. The computer program product of claim 411, the computerreadable medium further storing: program code for obtaining an expectedsalary for a candidate; program code for converting the expected salaryto at least one multiplier; and program code for storing each said atleast one multiplier in the parsed resume, wherein each said at leastone multiplier is associated with a salary range unit, and wherein eachsaid at least one multiplier is the greatest integer that is less thanor equal to a result of a division of the expected salary by the salaryrange unit.
 462. The computer program product of claim 461, wherein theresume further comprises the expected salary.
 463. The computer programproduct of claim 461, wherein the program code for storing each said atleast one multiplier further comprises: program code for storing eachsaid at least one multiplier as an element defined by a markup language,the element comprising a start tag, content data, and an end tag,wherein the start tag and the end tag include an indication of thesalary range unit associated with each said at least one multiplier, andwherein the content data includes each said at least one multiplier.464. The computer program product of claim 463, wherein the storing ofthe element is to a file.
 465. The computer program product of claim464, wherein the file comprises an XML file.
 466. A system for using acomputer to improve a precision ratio when searching a resume database,comprising: means for receiving a resume; means for parsing the resumeto: locate at least one skill or experience-related phrase in theresume; determine an experience range for each said at least one skillor experience-related phrase by examining a use of each said at leastone skill or experience-related phrase in the resume; and compute a termof experience for each said at least one skill or experience-relatedphrase based on the experience range, wherein the term of experience foreach said at least one skill or experience-related phrase is a summationof the term of experience for each occurrence of the phrase associatedwith a different experience range; means for storing the resume in theresume database; means for associating at least one of said at least oneskill or experience-related phrase located in the resume with at leastone implied skill or experience-related phrase, wherein a term ofexperience for each said at least one implied skill orexperience-related phrase is the term of experience computed for said atleast one of said at least one skill or experience-related phrase, andwherein said at least one skill or experience-related phrase and said atleast one implied skill or experience-related phrase are searchablephrases in the resume; means for creating a parsed resume based on theresume, the parsed resume including each searchable phrase in theresume, the term of experience for each searchable phrase, and arelationship between the term of experience and each searchable phrase;means for storing the parsed resume in the resume database; means forsending a database query to the resume database, the database queryincluding a job description that includes at least one job requirement,each said at least one job requirement including a required skill orexperience-related phrase, and a required term of experience; and meansfor receiving a result set in response to the database query, whereinthe result set includes the resume when the parsed resume satisfies thejob description.
 467. The system of claim 466, wherein at least one ofeach said at least one implied skill or experience-related phrasecomprises a broader skill or experience-related phrase.
 468. The systemof claim 466, wherein the received resume is one of a number of resumes.469. The system of claim 468, wherein the receipt of the number ofresumes is automatic, scheduled, or periodic.
 470. The system of claim466, wherein the resume includes at least one word, and wherein said atleast one skill or experience-related phrase comprises said at least oneword.
 471. The system of claim 470, wherein, when the resume includes atleast two words, said at least one skill or experience-related phrasefurther comprises at least one word group, each said at least one wordgroup including consecutive words from the resume.
 472. The system ofclaim 466, wherein the means for storing the resume further comprises:means for storing the resume as a public resume, wherein the resumedatabase is accessible by at least one recruiter, and the public resumeis accessible by every recruiter.
 473. The system of claim 466, whereinthe means for storing the resume further comprises: means for storingthe resume as a private resume, wherein the resume database isaccessible by at least one recruiter, and the private resume isaccessible by only one recruiter of said at least one recruiter. 474.The system of claim 466, wherein the means for storing the resumefurther comprises: means for storing the resume as a private resume,wherein the resume database is accessible by at least one recruitmentteam, each said at least one recruitment team including at least onerecruitment team member, and the private resume is accessible by onlyone recruitment team of said at least one recruitment team.
 475. Thesystem of claim 466, wherein the means for associating said at least oneof said at least one skill or experience-related phrase with each saidat least one implied skill or experience-related phrase furthercomprises: means for retrieving each said at least one implied skill orexperience-related phrase from a phrase mapping table that relates eachsaid at least one of said at least one skill or experience-relatedphrase to each said at least one implied skill or experience-relatedphrase.
 476. The system of claim 466, wherein said at least one skill orexperience-related phrase includes at least one attribute for acandidate.
 477. The system of claim 466, wherein the examining of theuse of each said at least one skill or experience-related phrase in theresume includes examining a portion of the resume that surrounds eachsaid at least one skill or experience-related phrase for a context. 478.The system of claim 477, wherein a context for each said at least oneimplied skill or experience-related phrase is the context of theimplying said at least one skill or experience-related phrase.
 479. Thesystem of claim 478, further comprising: means for setting the term ofexperience to zero when the experience range is zero; means fordetermining a start time for the experience range when the experiencerange is greater than zero; means for determining an end time for theexperience range when the experience range is greater than zero; meansfor computing a time difference between the start time and the end timewhen the experience range is greater than zero; and means for settingthe term of experience to the time difference when the experience rangeis greater than zero, wherein the term of experience is rounded down toa unit of time.
 480. The system of claim 479, wherein the means forsetting the term of experience to the time difference further comprises:means for computing a repeated entry time difference for each of thesearchable phrases that is a repeated entry and is associated with another experience range; and means for adding to the time difference eachrepeated entry time difference, wherein the other experience rangeincludes an other start time and an other end time, and wherein theother start time and the start time are different, or the other end timeand the end time are different.
 481. The system of claim 480, whereinthe means for storing the parsed resume further comprises: means forstoring each of the searchable phrases having an identical term ofexperience as an element defined by a markup language, the elementcomprising a start tag, content data, and an end tag, wherein the starttag and the end tag include the identical term of experience, andwherein the content data includes each of the searchable phrases havingthe identical term of experience.
 482. The system of claim 481, whereinthe content data further includes a nested element comprising a nestedstart tag, nested content data, and a nested end tag, wherein the nestedstart tag and the nested end tag include a nested term of experience,and wherein the nested content data includes each of the searchablephrases having the nested term of experience.
 483. The system of claim482, wherein the nested term of experience is greater than the identicalterm of experience.
 484. The system of claim 481, wherein the storing ofthe element is to a file.
 485. The system of claim 484, wherein the filecomprises an XML file.
 486. The system of claim 466, further comprising:means for sending a portion of the parsed resume to a candidate. 487.The system of claim 486, wherein a reference to the portion of theparsed resume is sent in a message to the candidate.
 488. The system ofclaim 486, further comprising: means for receiving a modified copy ofthe portion of the parsed resume.
 489. The system of claim 488, furthercomprising: means for creating a replacement resume based on themodified copy of the portion of the parsed resume.
 490. The system ofclaim 466, further comprising: means for receiving the job description;means for storing the job description in the resume database; and meansfor sending a portion of the a result set to a recruiter, wherein theresult set includes at least one matching resume from the resumedatabase, each said at least one matching resume satisfying the jobdescription.
 491. The system of claim 490, wherein the required term ofexperience is rounded up to a unit of time.
 492. The system of claim491, wherein each said at least one matching resume satisfies the jobdescription when the parsed resume includes the required skill orexperience-related phrase for each said at least one job requirement,and the term of experience for the required skill or experience-relatedphrase in the parsed resume is greater than or equal to the requiredterm of experience.
 493. The system of claim 492, wherein at least oneof said at least one job requirement includes at least one alternativejob requirement, each said at least one alternative job requirementcomprising an alternative required skill or experience-related phraseand an alternative required term of experience, and wherein each said atleast one matching resume satisfies said at least one of said at leastone job requirement when the parsed resume includes either: the requiredskill or experience-related phrase for said at least one of said atleast one job requirement, and the term of experience for the requiredskill or experience-related phrase in the parsed resume is greater thanor equal to the required term of experience; or the alternative requiredskill or experience-related phrase for any said at least one alternativejob requirement, and the term of experience for the alternative requiredskill or experience-related phrase in the parsed resume is greater thanor equal to the alternative required term of experience.
 494. The systemof claim 491, wherein each said at least one matching resume satisfiesthe job description when the parsed resume includes the required skillor experience-related phrase for any said at least one job requirement,and the term of experience for the required skill or experience-relatedphrase in the parsed resume is greater than or equal to the requiredterm of experience.
 495. The system of claim 490, wherein the jobdescription is a clone of an existing job description stored in theresume database.
 496. The system of claim 490, wherein the received jobdescription is one of a number of job descriptions.
 497. The system ofclaim 496, wherein the receipt of the number of job descriptions isautomatic, scheduled, or periodic.
 498. The system of claim 490, whereina reference to the portion of the result set is sent.
 499. The system ofclaim 490, further comprising: means for identifying as a selectedresume one of said at least one matching resume; and means fordisplaying the selected resume on a display screen having a left sideand a right side, the left side showing a parsed representation of theselected resume, and the right side showing a marked-up representationof the selected resume.
 500. The system of claim 499, wherein themarked-up representation includes at least one occurrence of therequired skill or experience-related phrase or at least one implyingphrase of the required skill or experience-related phrase for said atleast one job requirement, and wherein the means for displaying theselected resume further comprises: means for marking each said at leastone occurrence of the required skill or experience-related phrase foreach said at least one job requirement.
 501. The system of claim 500,wherein the marking includes highlighting each said at least oneoccurrence of the required skill or experience-related phrase or said atleast one implying phrase of the required skill or experience-relatedphrase for said at least one job requirement, or displaying in reversevideo each said at least one occurrence of the required skill orexperience-related phrase or said at least one implying phrase of therequired skill or experience-related phrase for said at least one jobrequirement.
 502. The system of claim 466, wherein the job descriptionfurther includes a required level of education or a required field ofspecialization, the system further comprising: means for storing the jobdescription in the resume database; and means for sending a portion ofthe result set, wherein the result set includes at least one matchingresume from the resume database, each said at least one matching resumesatisfying the job description.
 503. The system of claim 502, whereineach said at least one matching resume satisfies the job descriptionwhen the parsed resume includes the required level of education, therequired field of specialization, or a phrase implying the requiredlevel of education or the required field of specialization.
 504. Thesystem of claim 466, wherein the job description further includes arequired salary range comprising a minimum required salary and a maximumrequired salary, the system further comprising: means for storing thejob description; and means for sending a portion of the result set,wherein the result set includes at least one matching resume from theresume database, each said at least one matching resume satisfying thejob description.
 505. The system of claim 504, wherein each said atleast one matching resume satisfies the job description when the parsedresume includes an expected salary that falls within the required salaryrange.
 506. The system of claim 505, wherein the expected salary fallswithin the required salary range when: the expected salary is greaterthan or equal to the minimum required salary, and the expected salary isless than or equal to the maximum required salary.
 507. The system ofclaim 506, wherein the parsed resume includes at least one salary rangeset to represent the expected salary, each said at least one salaryrange set including a salary range unit and a multiplier, and wherein amultiplication of the salary range unit and the multiplier yields aresult that is the greatest integer that is less than or equal to theexpected salary.
 508. The system of claim 466, further comprising: meansfor extracting education data from the resume; and means for storing theeducation data in the parsed resume.
 509. The system of claim 508,wherein the means for storing the education data further comprises:means for storing the education data in an element defined by a markuplanguage, the element comprising a start tag, content data, and an endtag, wherein the content data includes the education data.
 510. Thesystem of claim 509, wherein the storing of the element is to a file.511. The system of claim 510, wherein the file comprises an XML file.512. The system of claim 509, wherein the education data includes atleast one education summary, and wherein the means for storing theeducation data further comprises: means for storing each said at leastone education summary in an education summary element defined by amarkup language, the education summary element comprising an educationsummary start tag, education summary content data, and an educationsummary end tag, wherein the education summary content data includeseach said at least one education summary.
 513. The system of claim 512,wherein each said at least one education summary includes a degree, afield of specialization, a school name, and a graduation year, andwherein the means for storing the education data further comprises:means for storing the education summary content data in an educationelement defined by a markup language, the education element comprisingan education start tag, education content data, and an education endtag, wherein the education start tag and the education end tag includean indication of the degree, and wherein the education content dataincludes each said at least one education summary.
 514. The system ofclaim 513, wherein the education content data further includes a nestededucation element comprising a nested education start tag, nestededucation content data, and a nested education end tag, wherein thenested education start tag and the nested education end tag include anindication of a prerequisite degree implied by the degree, and whereinthe nested education content data includes each said at least oneeducation summary.
 515. The system of claim 509, wherein the means forstoring the education data further comprises: means for storing degreedata in a degree element defined by a markup language, the degreeelement comprising an degree start tag, degree content data, and adegree end tag, wherein the education data includes at least oneeducation summary, each said at least one education summary including adegree and at least one prerequisite degree implied by the degree, andwherein the degree content data includes, for each said at least oneeducation summary, the degree and each said at least one prerequisitedegree.
 516. The system of claim 466, further comprising: means forobtaining an expected salary for a candidate; means for converting theexpected salary to at least one multiplier; and means for storing eachsaid at least one multiplier in the parsed resume, wherein each said atleast one multiplier is associated with a salary range unit, and whereineach said at least one multiplier is the greatest integer that is lessthan or equal to a result of a division of the expected salary by thesalary range unit.
 517. The system of claim 516, wherein the resumefurther comprises the expected salary.
 518. The system of claim 516,wherein the means for storing each said at least one multiplier furthercomprises: means for storing each said at least one multiplier as anelement defined by a markup language, the element comprising a starttag, content data, and an end tag, wherein the start tag and the end taginclude an indication of the salary range unit associated with each saidat least one multiplier, and wherein the content data includes each saidat least one multiplier.
 519. The system of claim 518, wherein thestoring of the element is to a file.
 520. The system of claim 519,wherein the file comprises an XML file.